Table of Contents
Introduction
Oracle E-Business Suite Integrated SOA Gateway provides interface for communicating between your custom applications and Oracle EBS. This component is already included in the Oracle E-Business installation but requires configuration to be enabled. This post is an attempt to share my experience enabling ISG and to provide clear step by step instructions.
References
556540.1 – Installing Oracle E-Business Suite Integrated SOA Gateway, Release 12.1.3
Tutorial: Configuring Integrated SOA Gateway in Oracle E-Business Suite R12.1.3
Oracle E-Business Suite Integrated SOA Gateway Troubleshooting Guide, Release 12 (Doc ID 726414.1)
Oracle E-Business Suite Integrated SOA Gateway 12.1.3 REST Services Update (Doc ID 1998019.1)
Install necessary patches
Check that Oracle Application Server 10g Release 3 (10.1.3) is on Patch Set 5 (10.1.3.5.0)
export ORACLE_HOME=$IAS_ORACLE_HOME cd $IAS_ORACLE_HOME/OPatch ./opatch lsinventory -detail|grep "Oracle Application Server PatchSet" .... Oracle Application Server PatchSet 10.1.3.5.0 |
If the version is lower, e.g. 10.1.3.4.0, then use Document 454811.1 to upgrade your system to Oracle Application Server 10g Release 3 (10.1.3) Patch Set 5 (10.1.3.5.0).
Apply additional Oracle Application Server 10.1.3.5 Oracle Home patches
Stop the EBS application tier.
[applmgr@r12 ~]$ cd $ADMIN_SCRIPTS_HOME/ [applmgr@r12 scripts]$ ./adstpall.sh |
Apply the following patches
[-]33523019: Merge Request on Top of 10.1.3.1.0 for Bugs 9223438 12352047 30423472 [-]9371120: Web Service Framework Takes More Time for Giving the Response [-]7366746: WLP: Enabling "Use SAML Authority: Verify Signature" Doesn't Require SAML Token [-]34052831: Merge Request on Top of 10.1.3.5.1 for Bugs 31180718 33934124 export ORACLE_HOME=$IAS_ORACLE_HOME export PATH=$ORACLE_HOME/OPatch:$PATH echo $ORACLE_HOME which opatch cd 33523019 opatch apply cd 9371120 opatch apply cd 7366746 opatch apply cd 34052831 opatch apply |
Check the logfiles for errors.
Verify that all the patches were applied:
opatch lsinventory|egrep '33523019|9371120|7366746|34052831' 1) Patch 34052831 applied on Thu Jul 20 11:01:34 CEST 2023 2) Patch 7366746 applied on Thu Jul 20 11:01:16 CEST 2023 [ Bug fixes: 7366746 ] 3) Patch 9371120 applied on Thu Jul 20 11:00:42 CEST 2023 [ Bug fixes: 9371120 ] 4) Patch 33523019 applied on Thu Jul 20 10:59:05 CEST 2023 |
Apply ISG Consolidated Patch with the pre-requisites
List of patches to be applied
[+]17884289, R12.AD.B.Delta.4 (minimum requirement) or later R12.AD.B.Delta patch [-]34069667 - OAFM SERVER XML TEMPLATE TO BE MODIFIED TO PICKUP UPDATED LOG4J JAR [+]34052831: Applied in the previous section [-]33822358: ISG Consolidated Patch for 12.1.3 (22_1_3). [+]R12.AD.B.delta.4 [+]R12.ATG_PF.B.delta.3 [-]27135427 R12.TXK.B.delta.4 [-]29522970:R12.TXK.B additional TXK critical patch [-]28685719:R12.TXK.B additional TXK critical patch [-]23645824:R12.TXK.B additional TXK critical patch [-]17428617: XDKJ:UNEXPECTED XMLDOMEXCEPTION WHEN PI TARGET NAME START WITH "XML" [-]30003856: MERGE REQUEST ON TOP OF 10.1.3.5.0 FOR BUGS 12965674 28470429 |
The commands to apply the patches
export ORACLE_HOME=$IAS_ORACLE_HOME export PATH=$ORACLE_HOME/OPatch:$PATH echo $ORACLE_HOME which opatch cd 17428617 opatch apply cd 30003856 opatch apply |
Check the logfiles for errors.
Verify that all the patches were applied:
opatch lsinventory|egrep '17428617|30003856' 1) Patch 30003856 applied on Thu Jul 20 11:11:17 CEST 2023 2) Patch 17428617 applied on Thu Jul 20 11:10:38 CEST 2023 |
Post-steps for patch 30003856
Clarification Of Prerequisites And Post Installation Instructions For EBusiness Suite In Patch 30003856 (Doc ID 2765335.1)
copy j2ee/home/config/java2.policy to all oc4j config dir. The file is located in $ORACLE_HOME/j2ee/home/config NOTE: If you have 10.1.2 and 10.1.3 then use the latest one 10.1.3.
source $APPL_TOP/APPSVIS_r12.env ls -l $IAS_ORACLE_HOME/j2ee/home/config/java2.policy $ORACLE_HOME/j2ee/DevSuite/config/java2.policy $IAS_ORACLE_HOME/j2ee/forms/config/java2.policy $IAS_ORACLE_HOME/j2ee/oafm/config/java2.policy $IAS_ORACLE_HOME/j2ee/oacore/config/java2.policy cp $IAS_ORACLE_HOME/j2ee/home/config/java2.policy $ORACLE_HOME/j2ee/DevSuite/config/java2.policy cp $IAS_ORACLE_HOME/j2ee/home/config/java2.policy $IAS_ORACLE_HOME/j2ee/forms/config/java2.policy cp $IAS_ORACLE_HOME/j2ee/home/config/java2.policy $IAS_ORACLE_HOME/j2ee/oafm/config/java2.policy cp $IAS_ORACLE_HOME/j2ee/home/config/java2.policy $IAS_ORACLE_HOME/j2ee/oacore/config/java2.policy ls -l $IAS_ORACLE_HOME/j2ee/home/config/java2.policy $ORACLE_HOME/j2ee/DevSuite/config/java2.policy $IAS_ORACLE_HOME/j2ee/forms/config/java2.policy $IAS_ORACLE_HOME/j2ee/oafm/config/java2.policy $IAS_ORACLE_HOME/j2ee/oacore/config/java2.policy |
Upgrade to the latest TXK version 4 and apply TXK critical patches
source $APPL_TOP/APPSVIS_r12.env sqlplus -s apps/$pass @$AD_TOP/patch/115/sql/adsetmmd.sql ENABLE cd 34069667 adpatch u34069667.drv cd 27135427 adpatch u27135427.drv cd 29522970 adpatch u29522970.drv cd 28685719 adpatch u28685719.drv cd 23645824 adpatch u23645824.drv |
Apply the ISG consolidated patch
cd 33822358 adpatch u33822358.drv |
Verify that all the patches were applied
sqlplus apps/apps set linesize 250; col patch_name format a10; col creation_date format a20; select patch_name,creation_date from ad_applied_patches where patch_name in ('34069667','27135427','29522970','28685719','23645824');SQL> SQL> SQL> PATCH_NAME CREATION_DATE ---------- -------------------- 23645824 20-JUL-23 27135427 20-JUL-23 27135427 20-JUL-23 28685719 20-JUL-23 29522970 20-JUL-23 |
Update database tier nodes with the Oracle E-Business Suite Release 12.1.3 code level
Performing the following steps to update all database tier nodes to the latest codelevel.
On the application tier, as the applmgr user:
Source the application tier environment file.
source $APPL_TOP/APPSVIS_r12.env |
Run the admkappsutil.pl utility to create the appsutil.zip file in $INST_TOP/admin/out.
$ perl $AD_TOP/bin/admkappsutil.pl |
On the database tier, as the oracle user:
Source the environment for the RDBMS_ORACLE_HOME.
source $ORACLE_HOME/VIS_r12.env |
Copy or FTP the appsutil.zip file to the $ORACLE_HOME.
Uncompress the appsutil.zip file under the database $ORACLE_HOME:
$ cd $ORACLE_HOME $ unzip -o appsutil.zip |
Run AutoConfig on the database tier as oracle user.
$ sh $ORACLE_HOME/appsutil/scripts/$CONTEXT_NAME/adautocfg.sh |
As the applmgr user, run AutoConfig on all application tier nodes.
$ sh $INST_TOP/admin/scripts/adautocfg.sh |
Disable the maintenance mode
sqlplus -s apps/$pass @$AD_TOP/patch/115/sql/adsetmmd.sql DISABLE |
Run the ISG configuration script
Note: This section also covers the post steps of the patch 34052831 which are described in the following document:
What To Do With Pcapps.rar Delivered In Patch 15914125 or patch 22839153? (Doc ID 1586876.1)
Add $IAS_ORACLE_HOME/j2ee/oafm/connectors/AppsSOAAdapter/AppsSOAAdapter/ (the actual physical path of this directory) to the “s_adovar_classpath” variable in the context file. E.g. /u01/oracle/VIS/apps/tech_st/10.1.3/j2ee/oafm/connectors/AppsSOAAdapter/AppsSOAAdapter:
/d01/oracle/VIS/apps/tech_st/10.1.3/appsutil/jdk/lib/dt.jar:/d01/oracle/VIS/apps/tech_st/10.1.3/appsutil/jdk/lib/tools.jar:/d01/oracle/VIS/apps/tech_st/10.1.3/appsutil/jdk/jre/lib/rt.jar:/d01/oracle/VIS/apps/apps_st/comn/java/lib/appsborg.zip:/d01/oracle/VIS/apps/tech_st/10.1.2/forms/java:/d01/oracle/VIS/apps/tech_st/10.1.2/forms/java/frmall.jar:/d01/oracle/VIS/apps/tech_st/10.1.2/jlib/ewt3.jar:/d01/oracle/VIS/apps/tech_st/10.1.2/j2ee/OC4J_BI_Forms/applications/formsapp/formsweb/WEB-INF/lib/frmsrv.jar:/d01/oracle/VIS/apps/apps_st/comn/java/classes:/u01/oracle/VIS/apps/tech_st/10.1.3/j2ee/oafm/connectors/AppsSOAAdapter/AppsSOAAdapter |
Set the applications environment and stop all application tier processes.
source $APPL_TOP/APPSVIS_r12.env |
Stop all application tier processes for the instance by running the script
$ADMIN_SCRIPTS_HOME/adstpall.sh |
Note: If the ‘oc4jadmin’ password for the OAFM oc4j instance is not known, then reset the password in the following file before running the script.
$INST_TOP/ora/10.1.3/j2ee/oafm/config/system-jazn-data.xml |
Take the backup of system-jazn-data.xml before resetting the password. Replace the modified system-jazn-data.xml with the backup of system-jazn-data.xml after running the script.
For example, you can reset the credentials to ‘!password’ using the following entry:
Bounce the oafm container
cd $ADMIN_SCRIPTS_HOME adoafmctl.sh stop adoafmctl.sh start |
Run TXK development script to install Oracle Application Server Adapter for Oracle Applications as shown below:
$FND_TOP/bin/txkrun.pl -script=CfgOC4JApp -applicationname=pcapps -oc4jpass=password -runautoconfig=No |
Verify that no errors are present in the logfile.
Run the AutoConfig script
$ADMIN_SCRIPTS_HOME/adautocfg.sh |
Start all application tier processes for the instance by running the script
$ADMIN_SCRIPTS_HOME/adstrtal.sh |
Enable ASADMIN user
Log in to Oracle E-Business Suite as a user sysadmin.
Select the User Management responsibility in the Navigator.
Click the Users link from the navigation menu to open the User Maintenance window.
Locate user ‘ASADMIN’ by entering information in the search area to retrieve the ‘ASADMIN’ user.
Click the Update icon next to the ASADMIN user to open the Update User window.
Remove the Active To date field and click Apply.
Click the Reset Password icon next to the ASADMIN user to open the Reset Password window.
Enter new password twice and click Submit.
After activating the ASADMIN user, verify if the ASADMIN user has the ‘Apps Schema Connect Role’ (UMX|APPS_SCHEMA_CONNECT) role in wf_user_roles.
Run the following SQL queries:
select role_name from wf_user_roles where user_name='ASADMIN'; select role_name from wf_user_role_assignments where user_name='ASADMIN'; |
Both queries should return the same results:
ROLE_NAME ------------------------ ASADMIN UMX|APPS_SCHEMA_CONNECT |
If the ‘Apps Schema Connect Role’ role is not present in the wf_user_roles for the ASADMIN user, then run the ‘Workflow Directory Services User/Role Validation’ concurrent program to grant the role.
Use the following steps to execute the “Workflow Directory Services User/Role Validation” (FNDWFDSURV) concurrent program:
Log in to Oracle E-Business Suite as a user who has the System Administrator responsibility access privilege.
Select the System Administrator responsibility from the Navigator.
Select Request > Run.
Click Yes to select the Single Request.
In the Submit Request window, select ‘Workflow Directory Services User/Role Validation’ in the Name field.
Enter the following values in the Parameters pop-up window:
Batch size: 10000 User name: ASADMIN Fix dangling users: Yes Add missing user/role assignment: Yes Update WHO columns in WF tables: Yes |
Click OK in the Parameters window.
Click Submit to execute the request.
Reset the ‘ASADMIN’ password in the file system.
After the ‘ASADMIN’ user is enabled from Oracle E-Business Suite, reset the ‘ASADMIN’ password in the file $INST_TOP/ora/10.1.3/j2ee/oafm/config/system-jazn-data.xml as shown below:
Note: The password should be preceded by an exclamation mark (‘!’) so that when OAFM is started, the password gets encrypted. Ensure that you enter the exclamation mark before the actual password value in the tag.
Stop and restart the application tier services.
Validate the setup
After completing the setup tasks for Oracle E-Business Suite Integrated SOA Gateway, you need to validate the setup by executing the following test query.
http://ebshost.ebsdomain/webservices/SOAProvider/?testquery
E.g:
http://r12.localdomain/webservices/SOAProvider/?testquery
If it returns TEST RESPONSE, then the ISG setup task is performed successfully.
Verify that REST is configured successfully and active
http://ebshost.ebsdomain:port/webservices/rest/login
E.g:
https://r12.localdomain/webservices/rest/login
When prompted, provide Oracle E-Business Suite System Administration user credentials. You should see a response, similar to the following in the browser:
Configure token authentication
To make sure that token authentication works perform the following checks:
Check the value of the profile option “Applications Database ID” at the site level:
sqlplus apps/**** select fnd_profile.value('APPS_DATABASE_ID') from dual; |
This profile option inherits its value from the context file parameter s_dbc_file_name. So you may also check the value of that parameter as applmgr:
[applmgr@master ~]$ grep s_dbc_file_name $CONTEXT_FILE |
Open the following configuration file:
$INST_TOP/ora/10.1.3/j2ee/oafm/config/oc4j.properties |
Make sure that AGENT_JNDI_NAME is set to the same value as the profile option. Example:
AGENT_JNDI_NAME=EBSDB |
If you performed any changes to the configuration file restart the oafm container:
[applmgr@r12 scripts]$ cd $ADMIN_SCRIPTS_HOME [applmgr@r12 scripts]$ ./adoafmctl.sh stop [applmgr@r12 scripts]$ ./adoafmctl.sh start |
File oc4j.properties is overwritten by autoconfig, so your changes may get lost. To avoid adding the parameter after each autoconfig run you may create a custom template.
mkdir -p $FND_TOP/admin/template/custom cp $FND_TOP/admin/template/oafm_oc4j_properties_1013.tmp $FND_TOP/admin/template/custom cd $FND_TOP/admin/template/custom vi oafm_oc4j_properties_1013.tmp |
Update the following parameter as required.
Before:
AGENT_JNDI_NAME=%s_dbSid% |
After:
AGENT_JNDI_NAME=%s_dbc_file_name% |
Run autoconfig as applmgr and restart the applications
$ADMIN_SCRIPTS_HOME/adautocfg.sh $ADMIN_SCRIPTS_HOME/adstpall.sh $ADMIN_SCRIPTS_HOME/adstrtal.sh |
Configure ISG for TLS
If your EBS instance is TLS enabled check if the required ISG TLS configuration steps are performed.