Hi all, today i have faced issue when tried to restart the OIM service in cluster node.

ERROR: 

We are using Oracle Containers For J2EE (OC4J) version 10.1.3 on a system and OC4J has been running successfully for some time but suddenly one of the OC4J instances may fail to start and raise the following error:INFO: WSSERVLET14: JAX-WS servlet initializing

12/09/04 14:46:24 Oracle Containers for J2EE 10g (10.1.3.3.0)  initialized

12/09/04 14:46:24 WARNING: OC4J will not send ONS ProcReadyPort messages to opmn for service: OC4JServiceInfo id: null protocol: jms hostname: null port: 12603 description: null

12/09/04 14:46:24 null hostname was null

 ——–

12/09/04 14:46:28 Start process

——–

12/09/04 14:46:31 *** (SEVERE) Failed to set the internal configuration of the OC4J JMS Server with: XMLJMSServerConfig[file:/u01apps/oraclesoa/j2ee/xluser2/config/jms.xml]

12/09/04 14:46:31 WARNING: ApplicationStateRunning.loadConnectors Exception loading connector OracleASjms : Error parsing oc4j-ra.xml at /u01apps/oraclesoa/j2ee/xluser2/application-deployments/default/OracleASjms: Fatal error in file:/u01apps/oraclesoa/j2ee/xluser2/connectors/OracleASjms/OracleASjms/: Premature end of file.

 CAUSE:

The OC4J Java Messaging System creates a lock file to constrain access to a specific persistent message store to the single OC4J instance that created it.

The persistence lock file captures information about the OC4J instance that owns or previously owned the persistence store and this information includes the IP address of the owning oc4j instance. During startup if the OC4J Java Messaging System (JMS) discovers that a persistence store it has been configured to use has a lock file that it doesn’t own it will abort the startup procedure to avoid data corruption.

For the second error the source of the problem as indicated in the error is a conflict with the port. “ERROR jms.xml: port 9,127 already in use”

 SOULTION:

The startup problem can be resolved via the following steps:

1. Ensure that there is no running OC4J instance that is accessing the persistence store (e.g. “opmnctl status -l”),

2. ./opmnctl stopall

3. Navigate to persistance folder. For example : $ORACLE_HOME/j2ee/home/persistence/home_default_group_1

Remove the “.lock”

 rm -rf *.lock;

 4. restart the service. 

If above steps didnt work then try following action plan,

1. Check the disk space, if it reach 100% then clear the unwanted files.

2. replace the server.xml file from back up.

3. remove the lock files under $ORACLE_HOME/j2ee/home/persistence/home_default_group_1

4. Restart the service.

Hope this post helped you. :)