Oracle Forms 12c: frmconfighelper - enable_ohs

Posted by Dirk Nachbar on Tuesday, May 16, 2017
Yesterday I was blogging about how to create new Forms Managed Servers and how to deploy a new formsapp into them with the frmconfighelper tool (http://dirknachbar.blogspot.com/2017/05/oracle-forms-122120-multiple-managed.html).

Today I was testing the function enable_ohs from the frmconfighelper tool, which is mainly dedicated to generate a forms.conf file in your Oracle HTTP Server which contains the directives for your Forms Environment.

oracle@server> cd $ORACLE_HOME/forms/provision
oracle@server> ./frmconfighelper.sh
using log file /home/oracle/frmconfighelper/logs/frmconfighelper_2017_05_15_20_49_31.log ..........
-----------------------------------------------------------------
   Forms configuration helper script                             
-----------------------------------------------------------------
 This script helps administrators perform some of the Forms      
 related configuration tasks                                     
                                                                 
**Important**: - Please backup the Weblogic domain before        
                 performing any administration tasks on it using 
                 this script.                                    
               - You can run enable_sso, enable_webgate          
                 and enable_sso_ssl options  only once.          
                                                                 
 frmconfighelper.sh <option> <arguments>                         
                                                                 
 options:                                                        
    - enable_ohs <domain-home> <ohs-instance> <forms-managed-server1-host> 
                 <forms-managed-server1-port> [<forms-managed-server2-host> 
                 <forms-managed-server2-port>..]                    
. . .
. . .

As you can see from the above listing, the tool will generate a forms.conf file under the $DOMAIN_HOME/config/fmwconfig/components/OHS/<OHS_INSTANCE>/moduleconf with your provided Servers on which your Forms Managed Servers are running and their Port.
But the disadvantage of the function enable_ohs is, that:

  • the Location tag in the forms.conf is hardcoded with /forms
  • the directive is only for a Forms Cluster Environment
In case you have just a single Managed Server, you can not use it.
In case you have created a new Managed Server with an own defined Context Root (see my blogpost from 15th May 2017) you can not use it.
So, I had a closer look on the frmconfighelper.sh and did some modifications, so that I have now 2 functions for enable_ohs:
  • enable_ohs_cluster
  • enable_ohs_single
You can find my modified frmconfighelper.sh here for download, as its too long to provided here as inline text: https://drive.google.com/file/d/0Bziqha1Q1rglcng4dGhDM0p6TDA/view?usp=sharing
Transfer the new version to your target server, make a backup copy of the original frmconfighelper.sh under $ORACLE_HOME/forms/provision and place my modified frmconfighelper.sh in the same location.

The enable_ohs_cluster is mainly the same as the original version, just extended for one parameter for the Root-Context of your Formsapp

oracle@server> ./frmconfighelper.sh
. . .
. . .
 enable_ohs_cluster:                                             
    - domain-home    : Domain Home directory                     
    - ohs-instance   : OHS instance name (example ohs1)          
    - Forms Context  : Root Context (example forms)              
    - forms-managed-server(n)-host : Forms managed server host   
    - forms-managed-server(n)-port : Forms managed server port   
. . .
. . .
 examples:                                                       
                                                                 
  enable ohs cluster routing to forms managed servers                    
 ./frmconfighelper.sh enable_ohs_cluster /scratch/user_projects/domain/base_domain ohs1 sales wlshost.example.com 9001 wlshost.example.com 9010

The enable_ohs_single is newly added and will generate you a forms.conf with the correct directive for a single Forms Managed Server and the flexibility to provide your own Root-Context.
oracle@server> ./frmconfighelper.sh
. . .
. . .
 enable_ohs_single:                                              
    - domain-home    : Domain Home directory                     
    - ohs-instance   : OHS instance name (example ohs1)          
    - Forms Context  : Root Context (example forms)              
    - forms-managed-server-host : Forms managed server host      
    - forms-managed-server-port : Forms managed server port   
. . .
. . .
 examples: 

  enable ohs single routing to forms managed server              
  ./frmconfighelper.sh enable_ohs_single /scratch/user_projects/domain/base_domain ohs1 finance wlshost.example.com 9020

After you have executed either the enable_ohs_cluster or enable_ohs_single function, keep in mind that you have to restart your OHS, so that the newly added config file will be captured by the OHS.

Categories: