Details
-
Bug
-
Status: Resolved
-
Minor
-
Resolution: Fixed
-
3.1
-
None
-
All
Description
The problem code is:
Object[] beans = beanMap.keySet().toArray();
for (int i = 0; i < beans.length; i++) {
try
catch (Exception e)
{ log.debug("Could not unregister mbean", e); }}
The object[] will contain the keys - these is an array of ObjectName but they are typed as Object
There are two unregisterMBean methods unregisterMBean(Object bean) and unregisterMBean(ObjectName name).
The code will now call unregisterMBean(Object bean) when we want it to call unregisterMBean(ObjectName name). this will result in no beans being unregisters from this method.
The fix is, I think, to cast bean[i] to an ObjectName in the method call.