如何使用JConsole远程连接到linux / WASv7?

时间:2011-01-13 06:43:33

标签: java linux jmx jconsole

我正在尝试使用JConsole远程连接到服务器以监控&利用在那里注册的MBean。

我可以VNC到服务器上并使用“localhost:8050”在本地运行JConsole,但任何通过ip地址或主机名远程连接的尝试都会在NullPointerException中失败。

  

显示java.lang.NullPointerException

     

在   javax.management.remote.rmi.RMIConnector.connect(RMIConnector.java:281)

     

在   javax.management.remote.rmi.RMIConnector.connect(RMIConnector.java:227)

     

at sun.tools.jconsole.ProxyClient.tryConnect(ProxyClient.java:334)

     

at sun.tools.jconsole.ProxyClient.connect(ProxyClient.java:296)

     

at sun.tools.jconsole.VMPanel $ 2.run(VMPanel.java:280)

我已经阅读了其他优秀的q& a's以及许多其他网站。我尝试用iptables打开端口,编辑hosts文件。 ssl和身份验证被禁用,local.only被禁用。我已经禁用了代理并尝试了JMXServiceURL,但无济于事。

为什么我能够运行JConsole&在本地连接但不是远程连接?

我甚至有第二台服务器,运行win2008& tomcat,完美地播放!

有什么想法吗?

谢谢! 马丁

1 个答案:

答案 0 :(得分:1)

JAVA_OPTS="-Dcom.sun.management.jmxremote \
    -Dcom.sun.management.jmxremote.port=<port no> \
    -Dcom.sun.management.jmxremote.ssl=false \
    -Dcom.sun.management.jmxremote.authenticate=false \
    -Dcom.sun.management.jmxremote.local.only=false \
    -Djava.rmi.server.hostname=<server ip>"

尝试在应用程序服务器上使用此设置。它在Tomcat上对我有用。