Top 34 Oracle9i Forms Interview Questions You Must Prepare 24.May.2024

The Forms Servlet is in charge of dynamically generating the HTML page containing the necessary Forms Client information.

The Forms Listener Servlet is the architecture for Internet deployment. The Forms Listener Servlet manages the communication between the Forms Java Client and Oracle9i AS Forms Services in Oracle9i AS.

First of all, the Form that you wish to debug needs to make a call to Debug.Attach in PL/SQL (You might associate this with a menu option in the module.)  Calling Debug.Attach; will pop up a dialog on the remote system containing the name of the server and a port number. 

In the Forms Builder, use the Debug->Attach Debug menu option to display the "Attach Debug to" dialog.  Enter the supplied machine and port number into this dialog.  You will then be able to debug the remote session. 

Not directly. However, Oracle Login Server is able to authenticate against a LDAP directory and thus a Forms application can take advantage of this in a SSO environment. But you cannot use access control information stored in a LDAP directory with Forms.

The Forms Listener Servlet will always make HTTP 1.1 requests if the Web server and any intervening proxies, support this protocol level. The Servlet will drop down to using HTTP 1.0 if Web server or one of the proxies can only support that level of the protocol.

In Web-deployed Forms these commands and built-ins execute on the middle tier.  To execute the commands on the client browser machine, use a JavaBean.

In a similar way User Exits and ORA_FFI code all act on the middle tier and not on the browser client.

This is an option in Oracle9i Forms and still works. However, we have added enhanced support for JavaBe in Oracle9i Forms, which allows Forms to introspect the JavaBean at runtime and removes the need to write any Java code to handle the integration.  Enhanced JavaBean support is covered in the on-line help.

Yes.  Oracle supply a separate utility with the Oracle9i Forms distribution "f90plsqlconv".  This is a utility which will scan your files for obsolete usages and correct them where applicable.  It will also alert you to any changes you may have to make manually.

Use the Edit->Preferences dialog and set the location of your preferred web browser in the "Web Browser Location" field on the Runtime tab..

JInitiator is a Java Virtual Machine (JVM) that plugs into either Netscape Communicator or Microsoft Internet Explorer to provide an alternative JVM to that which those browsers provide.

Depending on the client platform the browser is running, we are supporting the following JVMs:

  1. Windows32
  2. Oracle JInitiator (with Netscape and Internet Explorer)
  3. Internet Explorer 5.x native JVM
  4. Macintosh
  5. Apple MRJ 2.2.3 (with Internet Explorer 5.0)
  6. Solaris
  7. Sun JDK and Java plug-in

No. Oracle9i Forms only supports Web deployment.  Applications that need to be run in Client Server or Character Mode should remain in Forms 6i .  Forms 6i will be supported until December 31st, 2004, or December 31st, 2007 with Extended Support for customers who wish to maintain such applications.

Windows XP is currently undergoing certification.  Refer to the "Client Platform Support" statement of direction available on OTN () for the latest status.

In the Edit->Preferences dialog Runtime tab, you can enter an application server URL.  This URL is the one that the builder will append to when constructing the URL to run.  Thus, if you specify a particular configuration on the end of this URL
(e.g. http://myserver/forms90/f90servlet?config=development ), that base configuration will be used, and additional runtime information appended to it.  

There are two ways to do this.  First, you can use the Oracle9i AS Portal MyFavorites portlet, which is a kind of bookmark portlet, allowing you to publish custom links.

Second, you can define particular links as folders in a Content area and publish them to the portal. The second option may be more suitable as it prevents users from customizing the links.

Many Client Server and Character Mode features have been removed from the Forms product for 9i .  The removed features mainly relate to features that where only maintained in Forms 6i for the purpose of backwards compatibility.  A detailed list of all of the obsolete features can be found on OTN ( /products/forms/pdf/featuresobsolescence.pdf)

Only Forms 6.0 and Forms 6i are supported for direct upgrade to Oracle9i Forms. Older versions of Forms should be upgraded to Forms 6i first.

Assuming that the device in question (for example, a Scanner) is attached to each client machine, rather than the server, you will use a Pluggable Java Component (PJC) to extend the capabilities of the Forms Java Client and allow it to talk to the hardware in question.  Oracle9i JDeveloper provides a Wizard to help you build such Puggable Java Components.

Only Windows NT 4.0 and Windows 2000 are supported as platforms for hosting the Oracle9i AS Forms Services. 

Browser clients that access Forms applications using JInitiator or native Internet Explorer can be based on any supported Win32 variant:

  • Windows 95 (while supported by Microsoft)
  • Windows 98
  • Windows ME (with patch 6)
  • Windows NT 4.0
  • Windows 2000

Set the environment variable FORMS90_CLAF=true, before starting the builder, to enable the "classic" Forms look and feel.

No.  The remote debugging within Forms uses a sockets connection to handle the debug traffic.  Generally firewalls do not allow traffic through unregulated sockets so the debug connection will not be made. 

In 6i on Windows I used to use the F4 key to display the Property Palette for an object in the builder.  This no longer appears to work.

In Oracle9i Forms use the F8 key to invoke the Property Palette.

Yes.  The Oracle9i Forms Developer gives you the ability to generate the PL/SQL code necessary to call any Java class from a Forms application, using the Java Importer facility.

With the code  generated by this feature, you are able to call compiled Java classes, directly from PL/SQL, in the Oracle9i AS Forms Services on the middle tier.


No.  In later patches to Forms 6i , we introduced a new way of running Forms on the web, without the need for a separate Forms Listener process.  This is a Java Servlet called the Forms Listener Servlet.  In Oracle9i AS Forms Services (the version of Forms in Oracle9i AS v2) the Forms Listener Servlet is the only supported way of deploying Forms.

Yes.  Oracle9i AS Forms Services supports a wide range of firewalls and proxy servers.

Yes.  You have to edit the relevant static or base .html file (if using the CGI or servlet).  In both cases you have to remove the <HTML>,<BODY>, </HTML>, and </BODY> tags.  Using the Portal Developer's Kit (PDK) downloaded from OTN (), you can set up the URL portlet.

This URL portlet takes an application, referenced by a URL, and brings it as a portlet into a portal page.

Yes. Oracle9i AS Forms Services applications can be configured as an external application to the Oracle Login Server. The Login Server is the Oracle unified Single Sign-On (SSO) solution,  mapping the Oracle9i Forms application user to a Single Sign-On user account.

The Java importer facility gives you the ability to use an Enterprise Java Bean (EJB) or Business Components for Java (BC4J) component as the basis of a Forms Block.  However, we recommend that you do not do this for the following reasons:

Calling out to Java from Forms has a small but significant performance implication.  The Java Native Interface (JNI) that is used to call out from the Forms C code to Java does impose a bottleneck on the operation as values and method calls are trferred.  Although this overhead is not noticeable in a simple function call, it will become evident if a Form Block is based on Java in this way.  The normal functionality of the block requires many calls back and forth to the datasource and in this case the delay imposed by the JNI bridge, on each call, will result in noticeably slower performance than that for a block based directly on a table, view or PL/SQL stored procedure.

Whenever a Forms process calls out to Java, it must have a Java Virtual Machine loaded into memory.  This will increase the memory footprint of your application.

Using a foreign data source in this way is a complex task in terms of hooking the Java Code up to the Forms tractional triggers. The maintenance burden is also high if changes have to be made, as both the PL/SQL interfaces and the Java code itself may need to be changed.

An EJB or BC4J component will create it's own JDBC connection to the database and not re-use the existing Forms connection, doubling the user load on the database.


You can either use a conventional Web upload to do this, or you can use a JavaBean plugged into the Forms Java Client.  An example of this is available on OTN ()

No. We don't support the use of D2KWUTIL in the middle tier. Many of the functions in the library require access to Window Handles, which will not work in the Web deployment scenario.  While some functions, such as WIN_API_ENVIRONMENT.GET_COMPUTER_NAME(), do work, they return information about the application server machine, not the client. Some functions, such as the bitwise operations, continue to function without a problem.

Oracle9i AS Forms Services is integrated with Oracle Enterprise Manager (EM) to allow the administration and the monitoring of the Oracle9i AS Forms Services. From the browser based EM console, you can monitor the client sessions running within a Forms Service, viewing how much memory and CPU each is using.  Individual sessions can even be killed from the EM console.

In order to use the Java Importer, The path used by the Form Builder must include the Java binclassic directory and the classpath should include both the classes that you want to import as well as the supplied importer.jar file.

Yes.  OLE integration works for external OLE servers invoked using OLE2.CREATE_OBJ.  The OLE server you are invoking must be available on the middle tier machine where the Oracle9i AS Forms Services resides.  Consequently the middle tier machine must be a Windows NT or Windows 2000 machine.  Embedded OLE containers and ActiveX (OCX) controls are not supported when running on the Web.

No.  In later patches to Forms 6i , we introduced a new way of building the start page for a Forms application, the Forms Servlet.  This Java Servlet does the same job as the Forms CGI, namely the construction of an HTML page based on configuration information supplied on the URL in combination with the formsweb.cfg file.  In Oracle9i Forms, this Servlet should be used instead of the CGI.

Multiple entries for a particular application can be defined in the formsweb.cfg file, with each application name suffixed with the country code, for instance HR, HR.DE, HR.FR and so on.  When a URL is submitted with the value CONFIG=HR, the Forms Servlet will detect for the submitting browsers language code and look for a suitable version of HR with that code appended.  

Thus a user running a browser in French would pick up the HR.FR version of the configuration.  If a particular configuration and language code combination is not found in the formsweb,cfg, then the base configuration (in this case HR) will be used.  Each of the country specific versions of the HR application can define settings such as the environment file accordingly. 


Yes, Oracle9i AS Forms Services are available as part of the Oracle9i AS v2 Enterprise Edition on Linux.