Sunday, March 9, 2014

OPMN not able to start OC4J or Containers (oracle application server)


Error appearing in opmn logs

Log file shows 

14/02/28 10:49:43 Start process
--------
14/02/28 10:49:46 WARNING: ApplicationLogManager is not installed, may result in loader leaks. Set -Djava.util.logging.manager=oracle.classloader.util.ApplicationLogManager
14/02/28 10:50:06 WARNING: Application.setConfig Application: default is in failed state as initialization failed.
oracle.classloader.util.AnnotatedNoClassDefFoundError:

Missing class: oracle.AQ.AQException

Dependent class: oracle.j2ee.ra.jms.generic.JMSResourceAdapter
Loader: default.root:0.0.0
Code-Source: /u01/prod/j2ee/OC4J_Test/connectors/OracleASjms/OracleASjms/gjra.jar
Configuration: jar files at root of /u01/prod/j2ee/OC4J_Test/connectors/OracleASjms/OracleASjms

The missing class is not available from any code-source or loader in the system.
14/02/28 10:50:06 Error initializing server: Application: default is in failed state as initialization failed
14/02/28 10:50:14 WARNING: Shared-library oracle.expression-evaluator:10.1.3.1 is closing, but is imported by adf.oracle.domain:10.1.3.1, adf.generic.domain:10.1.3.1.
14/02/28 10:50:14 WARNING: Shared-library adf.oracle.domain:10.1.3.1 is closing, but is imported by oracle.ifs.client:10.1.3.2.0.
14/02/28 10:50:14 WARNING: Shared-library apache.webservices:1.0.0 is closing, but is imported by oracle.ifs.client:10.1.3.2.0.
14/02/28 10:50:14 Fatal error: server exiting


The missing class is not available from any code-source or loader in the system.

This means that the OC4J_Test is trying to load JMS api classes from the $ORACLE_HOME/j2ee/OC4J_Test/connectors/OracleASjms/OracleASjms/gjra.jar directory ... and it is unable to find the class oracle.AQ.AQException.

Solution:
Ii made a quick check and found that in my internal install, the class oracle.AQ.AQException .

is available in

./rdbms/jlib/aqapi.jar
1070 Tue Jan 10 06:46:16 CET 2006 oracle/AQ/AQException.class


So

1. Please confirm the rdbms/jlib/aqapi.jar is exists at container level (which are not coming up)

2.  Use the classfind.sh script from the article Script to Determine Which jar File Contains a Java Class (Doc ID 469276.1)
to locate the oracle.AQ.AQException.class in your install ?

3. Copy the aqapi.jar from other nodes and try to restart.now.

Root Cause: there can be case when you have apply some OS level patches which might have corrupted this jar file. or any abnormal restart, shutdown done. (kill -3).


--Leave Comment if it helped.


Thanks,

No comments:

Post a Comment