如何更改已注册Mbean的运行时属性?

时间:2013-10-23 16:37:29

标签: java glassfish-3 mbeans jolokia

我正在使用J2EE项目,我的目标是在应用程序服务器(Glassfish 3.1.2)中监视/配置Web应用程序。为此,我希望使用Mbeans。 我在下面注册了我的MBean,

MBeanServer mbs = ManagementFactory.getPlatformMBeanServer(); 
UsageMonitor UsagemBean = new UsageMonitor(0,0,0,0);
ObjectName name = new ObjectName("com.journaldev.jmx:type=UsageMonitor");                  
mbs.registerMBean(UsagemBean, name);

这个MBean可以使用JConsole监控(没问题,运行良好)。 * 如何从另一个java类访问这个已注册的MBean? *以下是我用来访问MBean“java.lang:type = Memory”的方法。 而且,如果有人能够提出如何从JOLOKIA访问MBean的想法,那将是一个很好的帮助。 谢谢!。

 J4pClient j4pClient = new J4pClient("http://localhost:8080/jolokia");
 J4pReadRequest req = new J4pReadRequest("java.lang:type=Memory”,  "HeapMemoryUsage");
 req.setPath("used");
 J4pReadResponse resp = j4pClient.execute(req);
 System.out.println(resp.getValue());

1 个答案:

答案 0 :(得分:0)

检查“localhost:7001 / jolokia / list”中是否包含你的mbean.if,而不是你注册mbean的方式不正确。

您可以参考以下教程。您注册和创建mbean的方式可能有问题。 check this out