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

标签 java linux jmx jconsole

我正在尝试使用 JConsole 远程连接到服务器以监视和使用在此处注册的 MBean。

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

java.lang.NullPointerException

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

at 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)

我已经阅读了这里和许多其他网站上的其他优秀问答。我试过用 iptables 打开端口,编辑主机文件。禁用 ssl 和身份验证,禁用 local.only。我禁用了代理并尝试了 JMXServiceURL,但无济于事。

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

我什至还有第二台服务器,运行 win2008 和 tomcat,完美配合!

有什么想法吗?

谢谢! 马丁

最佳答案

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 上对我有用。

关于java - 如何使用 JConsole 远程连接到 linux/WASv7?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4677494/

相关文章:

linux - Mono/Linux 下基于 ServiceStack 的网站 : Performance with static content

linux - 如何处理后台 linux 任务的输出

java - 在 WebSphere 上使用 JMX 创建 JMS 队列

java - 访问静态字段的静态同步方法

java - onLowMemory 事件测试

java - 使用 Netbeans 在 Java 中的 JPanel 或 JFrame 中放置 map

java - 如何升级org.jboss.as.jmx :main in WildFly10

java - 如何在jmeter中创建用户定义函数

php - 使用 PHP 从基于 Linux 的文件服务器上传/检索文件

java - 带有 spring-boot-maven 插件的 Spring Boot - 运行集成测试后无法重启应用服务器