0

我们有一个 JMX 应用程序,我们在其中打开连接,然后Catalina:type=Deployer,host=[hostname]在方法调用中使用对象名称(以检查应用程序是否已部署)但我们得到一个异常 (InstanceNotFoundException)。这可能是什么原因?

4

1 回答 1

1

如果不查看更多代码或上下文,很难在这里提供帮助。但是,如果您查看支持大多数 JMX 客户端的javadocsMBeanServerConnectionInstanceNotFoundException ,您会发现这意味着:

InstanceNotFoundException 指定的 MBean 未在 MBean 服务器中注册。

这意味着ObjectName您指定的 bean 名称与您连接到的 JMX 服务器注册的 bean 名称不匹配。

ObjectName使用的必须与服务器注册的完全匹配。应该使用以下调用返回相同的名称:

Set<ObjectName> names = mBeanServerConnection.queryNames(null, null);
于 2013-03-21T20:56:45.950 回答