Why wait until 2009 July when Oracle desupports Jinitiator for Oracle Applications. Replace your jinitiator now with Sun Java JRE and see the difference PLATFORM : Red Hat Linux AS4 UPGRADING TO : JRE 1.6_05 Download Interoperability patch 6863618 Download the Java Runtime Environment (JRE) 6 plug-in at, http://java.sun.com/javase/downloads/index.jsp Downloaded JRE Native plug-in file from jre-6_uX-windows-i586-p.exe and rename to j2se160x.exe Move the j2se1600X.exe file to the web application tier and place it in [COMMON_TOP]/util/jinitiator Apply Developer 6i Patchset 18 ( 4948577 ) unzip patch to $ORACLE_HOME cd $ORACLE_HOME/procbuilder60/lib; make -f ins_procbuilder.mk install cp developer6i_patch18/bin/genshlib $ORACLE_HOME/bin Additional Patches sh patch.sh 4261542 cd $ORACLE_HOME cp -r $ORACLE_HOME/forms60/java/oracle/forms/handler/AlertDialog.class $ORACLE_HOME/forms60/java/oracle/forms/handler/AlertDialog.class.PRE_BUG4261542 cd $ORACLE_HOME/4261542/oracle/forms/engine Generate Product JAR Files ( adadmin ) 5216496 5753922 6195758 5938515 3830807 4586086 relink - adadmin 4888294 (adpatch ) 5884875 cd $ORACLE_HOME (6863618) Apply the Patch Driver using adpatch txkSetPlugin.sh 16005 Start Oracle Applicatons 11.5.10.2 and start using Java instead of Jinititor for Applets |
- Sharing Knowledge on Oracle E-Business Suite Applications, Database, Fusion Middleware !!!
Thursday, April 17, 2008
Replacing Jinitiator with Sun Java JRE for APPS
How to Reload APPS Java Class Objects
How to reload the APPS Java Classes This should only be necessary if the JVM was rebuilt for some reason. Using the utility adadmin it is possible to rebuild the JAR/ZIP files and have these loaded into the database. Before providing steps to do the rebuild and load it is necessary to be aware of unpublished bugsThe issue is that the file $AD_TOP/admin/driver/adldjava.drv used by adadmin to reload the JAR files into the Database is incorrect.The contents of $AD_TOP/admin/driver/adldjava.drv should be: loadjava csf java/jar csflf.jar UPDATE ADLDJAVA.DRV REBUILD THE JAR/ZIP FILES RELOAD THE JAR/ZIP FILES INTO THE DATABASE RECOMPILE THE LOADED JAVA CLASSES 1. Run Adadmin NOTE: The number of APPS Java Classes from before rebuilding the JVM will be more than the number of APPS Java Classes after completing above steps. This is because when Applications is first installed it also loads a Base image of the Database. This image includes a lot of Java Classes that are no longer necessary to be loaded. The fact that the JVM has been recreated and the Java Classes reloaded, only those Java Classes that should be loaded have been loaded. The fact that the number of Java Classes decreases is correct and expected. |
Pinning Oracle Applications Objects into the shared pool
Oracle Applications DBAs who want to improve database performance by pinning packages into shared pool. Why pinning objects into the shared pool? Oracle Applications requires space in the ORACLE System Global Area (SGA) for stored packages and functions. If SGA space is fragmented, there may not be enough space to load a package or function. You should pre-allocate space in the SGA shared pool for packages, functions, and sequences by "pinning" them. Pinning objects in the shared pool can provide a tremendous increase in database performance, if it is done correctly. Since pinned objects reside in the SQL and PL/PLSQL memory areas, they do not need to be loaded and parsed from the database, which saves considerable time. What objects to be pinned into the shared pool? Most performance improvement can be gained from pinning large, frequently used packages. Pinned objects are expensive in terms of memory space, since other not-pinned objects need this memory space, too. In general do not pin all objects or rarely used objects - this could even decrease database performance. As a general rule, you should always pin the following packages which are owned by SYS: STANDARD DBMS_STANDARD DBMS_UTILITY DBMS_DESCRIBE DBMS_OUTPUT and maybe other SYS packages that are often used (DBMS_LOCK, DBMS_ALERT, etc.). The Applications objects that should be pinned are harder to identify and will vary from site to site, depending on what the users are doing. To identify good candidates for pinning, you need to know which objects are being executed the most. To do this, let the system run long enough to reach a steady state (several days to a week). Then initiate a SQL*Plus session as system (or sys or apps) and run the following script $AD_TOP/sql/ADXCKPIN.sql. This will spool object execution and reload statistics into the output file ADXCKPIN.lst. Example output: OBJECT TYPE SPACE(K) LOADS EXECS KEPT ---------------------------------- ------------ -------- ------ ------- ---- APPS.FND_ATTACHMENT_UTIL_PKG PACKAGE 15.2 1 9 NO APPS.FND_ATTACHMENT_UTIL_PKG PACKAGE BODY 13.7 1 8 NO APPS.FND_CLIENT_INFO PACKAGE 2.7 1 206 NO APPS.FND_CLIENT_INFO PACKAGE BODY 13.0 1 206 NO APPS.FND_CONCURRENT PACKAGE 15.2 1 199 NO APPS.FND_CONCURRENT PACKAGE BODY 24.2 1 197 NO
Another handy script: SELECT substr(owner,1,10)||'.'||substr(name,1,35) "Object Name", ' Type: '||substr(type,1,12)|| ' size: '||sharable_mem || ' execs: '||executions|| ' loads: '||loads|| ' Kept: '||kept FROM v$db_object_cache WHERE type in ('TRIGGER','PROCEDURE','PACKAGE BODY','PACKAGE') AND executions > 0 ORDER BY executions desc, loads desc, sharable_mem desc;
Choose the objects with a high number of executions (EXECS) or very large (SPACE(K)), frequently used objects. If the decision is between two objects that have been executed the same number of times, then preference should be given to the larger object. From experience, very good results have been achieved with having pinned only about 10 packages.
How to pin object into shared pool? The pl/sql scripts $AD_TOP/sql/ADXGNPIN.sql (packages, functions) and ADXSPPNS.sql (sequences) generate pinning scripts, which can be executed in Sql*Plus. Do not run them without having edited them, otherwise the scripts would try to pin all objects. Create your own script to pin the packages and pin them in a descending order according to their size. The pl/sql command to pin a package (i.e. FNDCP_TMSRV) manually is: SQL> execute dbms_shared_pool.keep('APPS.FNDCP_TMSRV'); |
Sunday, April 6, 2008
How to Change IP Address in an Oracle Applications Environment
1. Change the IP Address in the Server; 2. Verify the current ip address setup in the Oracle Applications environment. Connect as apps user into SQL*Plus and run: select NODE_NAME, STATUS, NODE_MODE, NODE_ID,SERVER_ADDRESS, HOST, DOMAIN, WEBHOST, VIRTUAL_IP from fnd_nodes where node_name = upper('hostname'); 3. Run the following command to remove the old ip address from the Oracle Applications tables: perl $AD_TOP/bin/adgentns.pl appspass=apps contextfile=$APPL_TOP/admin/<SID>_hostname.xml -removeserver replace <SID>_hostname.xml for the context file name under the $APPL_TOP/admin directory; then connect to SQL*Plus as apps user and run: begin FND_NET_SERVICES.remove_server('<SID>', '<hostname>'); end; / commit; / replace <SID> by the SID of the environment and <hostname> by the hostname in the environment. Both must be entered in upper case. 4. Run autoconfig to populate the values using the new IP Address. 5. Confirm the ip address has been changed to the new value changed in the step 1: select NODE_NAME, STATUS, NODE_MODE, NODE_ID,SERVER_ADDRESS, HOST, DOMAIN, WEBHOST, VIRTUAL_IP from fnd_nodes where node_name = upper('hostname'); |
How to find out if a product is installed in e-Business Suite?
You can find out what products are installed in e-Business Suite, and their patch levels, via Oracle Applications Manager. You will also find a list of the installed by running the script <adutconf.sql> ($AD_TOP/sql/adutconf.sql), or in the file <applprod.txt>. You can find out the patch level of any product you have installed in e-Business Suite by running the following query via SQL: $ sqlplus apps / <pwd> SQL> SELECT substr(APPLICATION_SHORT_NAME,1,8) product, If you know the product code, you can obtain output for individual products with the following SQL: The product code is the 2- or 3-letter code you see when you search for a patch in Metalink by product family, and in the name of the patchset, e.g. 11i.BIS.L. As a double check that the database knows that the product is installed, you can run the following query. It should produce the same answer: |
How to start Apps R12 in forms socket mode for testing
Here are two methods (A and B) of starting the forms server for testing in R12. A. Modify the existing adformsrvctl.sh script, that starts the forms servlet process, to start the forms server. To verify that the forms server is running, you can run something like the following on Unix: 2. Source socket.env 3. To start the forms server, run: 4. At the user level, set the ICX: Forms Launcher to: |
Saturday, April 5, 2008
Changing Application Tier Platforms for Applications Release 12
It's now possible to migrate your E-Business Suite Release 12 application tier servers
from one operating system platform to another. Oracle announced the availability of
new Oracle Applications Platform Migration Methodology for E-Business Suite Release 12.
This process provides a way to quickly and easily move an existing Oracle E-Business Suite
middle tier (applications tier) system to a different platform. The migration utility retains
the exact E-Business Suite patch level; no APPL_TOP or Database synchronization is necessary.
This allows you to retain existing customizations.
Continue Reading on this from Steven Chan Blog
Tuesday, April 1, 2008
Oracle Applications 11i Hot Backup Cloning
You can make use of rapid clone for hot backup cloning of oracle applications 11i.
These are very useful while Oracle Applications Production server where downtime
is very much limited and is required to 24/7.
For 9i database, you can generate script to put tablespaces in offline mode.
For 10g datbase, you can put database itself in offline mode.
Here are the steps explained from Atul Kumars Blog :
Hot Backup Cloning ( which are explained for a 10g database with 11i )
Access Oracle Apps R12 / 11i from Linux Client
In Oracle Applications professional Users can access professional forms via Applet in web
browser. This Form Applet must run with in Java Virtual Machine (JVM) and Oracle bundles
its own JVM as Oracle Jinitiator. This Jinitiator is available only for Windows Client and for
Unix/Linux you have to use Java Plug-In. Till Oracle Apps 11i default JVM was Jinitiator but
with Oracle Apps R12 default JVM under which form Applet run is J2SE Plug-In. If you are
accessing Oracle Applications (11i/R12), Apps will automatically prompt you to install Jinitiator
or J2SE Plug-in (If Jinitiator/J2SE is not installed in client machine) but if you are accessing
same Oracle Applications from Linux/Unix it does not prompt to install plug-in and you can't
apps forms from Linux client.
Steps explained from Bas Klassen Blog :
Accessing Oracle EBS from Linux Client
Downtime and Apache Restricted Mode in Release 12
E-Business Suite Release 12 provides a useful mechanism for the Applications administrators
to start the Apache on the applications tier during down time. Applications administrator can
start the apache in a mode called restricted mode. Down time tasks like patching can continue
to be performed while the Apache is in restricted mode. Restricted access to Oracle Applications
Manager (OAM) is available in this mode. This allows the system administrator to monitor tasks
like patching from OAM. When the Apache is started in restricted mode, normal users are
redirected to a downtime URL containing downtime details.
Here are the details explained from Oracle Blogs (Steven Chan)
Downtime and Apache Restricted Mode in Release 11
E-Business Suite Release 11 provides a useful mechanism for the Applications administrators
to start the Apache on the applications tier during down time. Applications administrator can
start the apache in a mode called restricted mode. Down time tasks like patching can continue
to be performed while the Apache is in restricted mode. Restricted access to Oracle Applications
Manager (OAM) is available in this mode. This allows the system administrator to monitor tasks
like patching from OAM. When the Apache is started in restricted mode, normal users are
redirected to a downtime URL containing downtime details.
Here are the details explained from Oracle Blogs (Steven Chan)
http://blogs.oracle.com/schan/2008/03/28#a2561
Hope this help everyone.