Apps 11i is based on Forms 6i and is configured to run in socket mode by default.
Apps 12 is based on Forms 10g and is configured to run in servlet mode by default.
What is Forms Servlet Mode?
The Forms Listener Servlet is a Java servlet that delivers the ability to run Oracle Forms applications over HTTP and HTTPS connections. It manages the creation of a Forms Server Runtime process for each client, as well as network communications between the client and its associated Forms Server Runtime process.
The desktop client sends HTTP requests and receives HTTP responses from the web server. The HTTP Listener on the web server acts as the network endpoint for the client, keeping other servers and ports from being exposed at the firewall.
What is Forms Socket Mode?
Initial releases of the Oracle Forms Server product used a simple method for connecting the client to the server. The connection from the desktop client to the Forms Listener process was accomplished using a direct socket connection. The direct socket connection mode was suitable for companies providing thin client access to Forms applications within their corporate local area networks. For the direct socket connection mode, the client had to be able to see the server and had to have permission to establish a direct network connection.
Although the direct socket connection mode is perfectly suited for deployments within a company’s internal network, it's not the best choice for application deployment via unsecured network paths via the Internet. A company connected to the Internet typically employs a strict policy defining the types of network connections that can be made by Internet clients to secure corporate networks. Permitting a direct socket connection from an external client exposes the company to potential risk because the true identity of the client can be hard to determine.
Servlet Mode Advantages
HTTP and HTTPS traffic is easily recognizable by routers, while socket mode communications is generally considered suspect and treated on an exception basis.
Existing networking hardware can be used to support basic functions such as load-balancing and packet encryption for network transit.
More resilient to network and firewall reconfigurations.
More robust: servlet connections can be reestablished if network connections drop unexpectedly for Forms, Framework, and JSP-based pages.
Is the only supported method for generic Oracle Forms customers, and therefore is more thoroughly tested by the Forms and E-Business Suite product groups.
Performance traffic can be monitored via tools like Oracle Real User Experience Insight (RUEI).
Socket mode is not supported on Windows-based server platforms.
Socket Mode Advantages
Uses up to 40% less bandwidth than Forms servlet mode. This may be perceived by Wide Area Network (WAN) users as causing slower responsiveness, depending upon network latency.
Uses fewer application-tier JVM resources than servlet mode, due to fewer TCP turns and lack of overhead associated with HTTP POST handling.
Can we change default R12 forms mode from servlet to Socket and vice versa?
Yes , we can change R12 forms mode from servlet to socket and vice versa.
Although Forms Servlet is the preferred deployment method, there may be circumstances where customers need to switch from forms Servlet mode to
forms Socket mode, which allows desktop clients to access the Forms Server directly. Also to reduce network traffic as the servlet mode uses HTTP protocol on each transaction between a client and the Forms Server requiring the exchange of cookies and http headers, which increases, network traffic.
How to check if form service is in servlet or socket mode ?
$ ./adformsctl.sh status
You are running adformsctl.sh version 120.12.12000000.3
Not starting the Forms OC4J instance as Forms connect mode is set to socket.
adformsctl.sh: exiting with status 1
OR
$ ./adformsrvctl.sh status
You are running adformsrvctl.sh version 120.9.12000000.7
Checking status of FORMS Server (Socket Mode) ...
Forms Server (Socket) is running as PID 8352
adformsrvctl.sh: exiting with status 0
We can check the logfile which is at
$ADMIN_LOG_HOME/ora/10.1.2/forms/socket.log for more information.
To check if it is socket from front end do as follows
Log in to Oracle Applications and launch a Forms-based application.
Open the Sun Java Console (from Tools Menu in Internet Explorer).
Check whether the "mode" directive displayed in Sun Java Console when
launching forms-based applications is set to socket.
The direct launch URL for Forms Socket Mode is:
://.:/OA_HTML/frmservlet
To check if it is servlet from front end do as follows
Log in to Oracle Applications and launch a Forms-based application.
Open the Sun Java Console (from Tools Menu in Internet Explorer).
Check whether the "mode" directive displayed in Sun Java Console when
launching forms-based applications, is set to HTTP.
Direct Forms Servlet Launch is:
web_protocol>://.:/forms/frmservlet
Step by step to convert from Servlet mode to Socket mode :
=================================================
Using Forms Socket Mode with Oracle E-Business Suite Release 12 [ID 384241.1]
1.Source the environment on the application tier.
$. ./PROD_erp.env
2.Stop all the application tier services:
$INST_TOP/admin/scripts/adstpall.sh
3.Run the following command to enable Forms Socket Mode:
$FND_TOP/bin/txkrun.pl -script=ChangeFormsMode \
[-contextfile=] \ ( Full path to application tier context file)
-mode=socket \
[-port=] \ ( Port number used to run Forms in socket mode. The default port number is 9095. A port number is not needed if servlet mode is used.)
-runautoconfig= \ ( Specify whether AutoConfig should be run after changing the forms mode. Possible values are Yes,No)
-appspass=
Please Note :The script prompts for the parameters if they are not passed as command line arguments. If Autoconfig was not automatically executed as part of the preceding step, then we need to run AutoConfig on the application tier:
Step by steps to convert to servlet mode :
==================================
Using Forms Listener Servlet with Oracle Applications 11i [ID 201340.1]