[JBoss-dev] jboss-head status
Scott M Stark
scott.stark at jboss.org
Thu Aug 24 11:07:59 EDT 2006
There are still a number of sporadic
InstanceNotFoundException/NullPointerException errors are due to the
inconsistent handling of mbean services as services to be managed by the
ServiceController. In a number places there is code like this in the
EntityContainer:
// Try to register the instance cache as an MBean
try
{
ObjectName containerName = super.getJmxName();
Hashtable props = containerName.getKeyPropertyList();
props.put("plugin", "cache");
ObjectName cacheName = new
ObjectName(containerName.getDomain(), props);
server.registerMBean(instanceCache, cacheName);
}
catch(Throwable t)
{
log.debug("Failed to register cache as mbean", t);
}
Subsequent use of this mbean as a jboss mbean service can result in the
ServiceController taking ownership of the mbean and removing it on
undeployment, and this can cause the InstanceNotFoundException when a
container redundantly tries to remove the mbean it registered. This has
to be cleaned up to only use the ServiceController to manage the mbeans.
The issue is, this is all deployer code that needs to be updated to the
vdf anyway. Maybe this should be done as it will have to be done
regardless, but I don't want to waste too much time away from getting
deployers ported to the VDF.
The NullPointerExceptions showing up tend to result in a failure at one
point triggering a cascade of destroys on services that were never fully
created. Its sporadic so I don't know if its because of some lifecycle
calls not going through the controller, configuration of mbeans
happening outside of lifecycle, etc.
More information about the jboss-development
mailing list