我在WebSphere中部署了一个war应用程序,作为Server1和Server2的一部分。 有一个集群有这两个服务器。 我想编写java代码作为我的war应用程序的一部分并获取集群节点的详细信息。
MBeanServer mbServer = ManagementFactory.getPlatformMBeanServer();
Set mBeanSet = mbServer.queryMBeans(null, null);
上面的代码没有列出群集mbean,事实上,并不是所有的mbeans都列在这里。
在Jconsole中,此处未列出Cluster Mbean。
我错过了什么吗?
答案 0 :(得分:1)
WebSphere MBean与JVM Mbeans不在同一MBean服务器中。这是列出所有WebSphere MBean的代码。由于Cluster Mbean位于Deployment Manager上,因此我们必须查找它。
ObjectName on = new ObjectName("WebSphere:*");
Set mbeans = AdminServiceFactory.getAdminService()
.getDeploymentManagerAdminClient().queryMBeans(on, null);
for (Object o: mbeans){
System.out.println("mbean: "+ o);
}