4

我正在尝试HeapMemoryUsage从作者实例中获取发布服务器的。我附上了下面调用的 servlet 的代码。

在异常中,您可以看到我们NullPointerException在第 88 行得到一个JMXConnectorFactory.connect(serviceUrl).

从 Jconsole 或通过从测试类(使用 main 方法的本地)运行它,它可以正常运行。

例外:

29.11.2012 15:01:17.407 *ERROR* [127.0.0.1 [1354197677403] GET /bin/cqdashboard HTTP/1.1]      org.apache.sling.engine.impl.SlingRequestProcessorImpl service: Uncaught Throwable  java.lang.NullPointerException
at javax.management.remote.rmi.RMIConnector.getConnection(RMIConnector.java:2327)
at javax.management.remote.rmi.RMIConnector.connect(RMIConnector.java:277)
at javax.management.remote.JMXConnectorFactory.connect(JMXConnectorFactory.java:248)
at com.test.cq.dashboard.servlet.DashboardTestServlet.doGet(DashboardTestServlet.java:88)
.....

编码:

String jmxUrl = "service:jmx:rmi:///jndi/rmi://127.0.0.1:43004/jmxrmi";
JMXServiceURL serviceUrl = new JMXServiceURL(jmxUrl);
JMXConnector jmxConnector = JMXConnectorFactory.connect(serviceUrl);
MBeanServerConnection mbeanConn = jmxConnector.getMBeanServerConnection();
ObjectName on = new ObjectName("java.lang:type=Memory");
CompositeData cd = (CompositeData) mbeanConn.getAttribute(on, "HeapMemoryUsage");
response.getWriter().write(cd.get("used"));
// System.out.println(cd.get("used"));
  • 我必须在 OSGi 包中导入一些包吗?
  • 我需要使用adobe提供的其他类吗?
  • 不可能做这样的事情吗?

首先十分感谢

4

0 回答 0