handle MBean preRegister method, if exists, unregister.

This commit is contained in:
高铁
2016-05-05 17:44:38 +08:00
parent 2cdd16c2e7
commit 94eef043f5
@@ -2879,8 +2879,15 @@ public class DruidDataSource extends DruidAbstractDataSource
@Override
public ObjectName preRegister(MBeanServer server, ObjectName name) throws Exception {
//do nothing
//return original name to avoid NullPointerException
if (server != null) {
try {
if (server.isRegistered(name)) {
server.unregisterMBean(name);
}
} catch (Exception ex) {
LOG.warn("DruidDataSource preRegister error", ex);
}
}
return name;
}