Unlocking Problems with JMS
By Antony Reynolds on Apr 26, 2007
Unlocking your JMSTwice in the past week I have come across a problem with starting an OC4J container within application server. In both cases the container started but JMS applications did not work. Lookups of Oracle JMS resources in JNDI would fail and a look at the OPMN log (in $ORACLE_HOME/opmn/logs/group_name~oc4j_instance~group_name~1.log) for the OC4J instance (or the command prompt for standalone OC4J instances) revealed that the Oracle JMS provider had failed to start due to an 'internal configuration error'.
Turns out that instead of closing down cleanly the OC4J instance had been abnormally terminated during JMS operations and JMS lock files had been left around in the $ORACLE_HOME/j2ee/home/config/persistence/home_group_name_1 directory. Remove the .lock files, restart the instance and JMS once again is its cheery old self.
Note that one instance that this occurred on I was playing with JMS directly, in the other instance it was Oracle Identity Manager that was exercising JMS and hence stopped working when JMS failed to initialise.
Hopefully this will save somebody some time in diagnosing their non-working application.