The technology stack for Oracle E-Business Suite Release 12.2 takes advantage of the latest Oracle technologies for Java. This appendix describes some aspects of the Java code impact due to the changes in the underlying technology components. In particular, the following areas are covered:
Removal of Oracle Containers for J2EE (OC4J) Dependencies
New JSP Compiler and Removal of OJSP Dependencies
Usage of Java Secure Socket Extension (JSSE) instead of Oracle SSL Library
Uptake of Oracle Streams Advanced Queuing Java APIs
If you have custom code from previous Oracle E-Business Suite releases that are affected by these updates, you should update your code to be compatible with the new technology components as part of your upgrade process.
Because Oracle Containers for J2EE (OC4J) is replaced with Oracle WebLogic Server, any custom Oracle E-Business Suite Java code with OC4J dependencies need to be removed and replaced with the appropriate and available APIs from the new technology components. In addition, be aware that there is an OC4J-specific issue encountered when constructing the MDS directory path.
Listed below are some of the changes you might need to make:
Any references to 'oracle.oc4j.*
' in your custom Java code need to be removed and replaced with a new set of appropriate and available APIs.
Remove any dependency on the container-specific thread handling library when removing the 'oc4jclient.jar
' under the Java packages of 'com.evermind.server.*
.
Append '/
' when constructing the MDS directory path.
For more information on migrating to Oracle WebLogic Server, refer to:Oracle WebLogic Server .
Oracle E-Business Suite Release 12.2 uses the WebLogic JSP compiler, weblogic.appc, to handle the precompilation for Oracle E-Business Suite JSP pages. The WebLogic JSP compiler has stricter syntax rules than OJSP. You should ensure that your custom code adheres to the following rules:
Do not use the nonstandard JSP 'usebean'.
Do not use the nonstandard "k" instead of "kb" for the Buffer attribute.
Extra space is not allowed in the "include file" directive.
Multiple "Imports" in a "page" directive are not allowed.
Remove any OJSP runtime engine dependencies.
Oracle E-Business Suite Release 12.2 uses the standard Java Secure Socket Extension (JSSE) instead of the Oracle SSL library. You should update any custom Oracle E-Business Suite Java code to use JSSE.
In particular, in the OC4J based Oracle Application Server (OAS) 10g, there are 3 libraries to supply the needs for SSL as follows:
http_client.jar
: which is carried over in OAS 11g Oracle Java Required Files (JRFs)
jssl-1_1.jar
: deprecated in 11g
javax-ssl-1_1.jar
:deprecated in 11g
To migrate, any Java code needs to be changed if it has the following reference (from the Oracle SSL library):
oracle.security.ssl.*
oracle.security.jwallet.*
oracle.security.cert.*
There is no standard suggested code change solution. However, here are some general recommendations:
For the SSL code on the client side, it is very easy to use JSSE in conjunction with Oracle HttpClient. You have to define the trust store and keystore location in system properties.
For the Wallet Manager, all Java products should use the Java keystore, and not the Oracle Wallet. The Oracle Wallet should only be used by C products. Oracle Wallet Manager can only be used with Oracle Wallet and not Java keystores. JSSE can use Java keystores by default.
For more information, see Primary Note for SSL Configuration in Fusion Middleware 11g, My Oracle Support Document 1218695.1.
Oracle E-Business Suite Release 12.2 uses Oracle Streams Advanced Queuing Release 11g Java APIs. In Oracle E-Business Suite Releases 12.0 and 12.1, Release 10g Oracle Streams Advanced Queuing Java APIs delivered as part of the OC4J. If any of your custom code uses the 10g Oracle Streams Advanced Queuing Java APIs, you should ensure that it is compatible with the 11g Oracle Streams Advanced Queuing Java APIs.