I am getting a Spring 1.2.1 exception when I undeploy my .ear in OC4J. Here's what happens:
1. When I undeploy, OC4J deregisters all my MBean instances that were configured and registered at startup via Spring.
2. Our ContextLoaderListener receives a contextDestroyed() event (which we do not override). Inside the default destroyed handler a series of bean destroys occur, including ones to destroy/deregister our MBeans.
3. Since our MBeans have already been deregistered by OC4J, Spring can't find the MBeans when it requests them from the MBeanServer. Spring throws an InstanceNotFoundException for each MBean we originally created via Spring.
Note, this only happens when using undeploy. A pure OC4J shutdown works fine (perhaps because OC4J does not itself deregister MBeans in shutdown).
Also, it seems not to be a problem. But as you know, false positives can confuse things. What can we do to prevent this?