我怎样才能使“jconsole”成为 可以与 Websphere 6.1 一起使用吗?
我在 WebSphere 6.1 上部署了一些托管 Bean,并设法通过独立客户端调用它们,但是当我尝试使用随标准 JDK 分发的应用程序“jconsole”时,无法使其工作。
有人成功将 jconsole 与 WAS 6.1 连接吗?
IBM WebSphere 6.1 应该支持 JSR 160 JavaTM 管理扩展 (JMX) 远程 API。 此外,它使用 MX4J 实现 (http://mx4j.sourceforge.net)。 但我无法使它既不能与“jconsole”也不能与“MC4J”一起使用。
我已正确设置 Classpath 和 JAVA_HOME,因此不存在问题。
I've deployed some Managed Beans on WebSphere 6.1 and I've managed to invoke them through a standalone client, but when I try to use the application "jconsole" distributed with the standard JDK can can't make it works.
Has anyone achieved to connect the jconsole with WAS 6.1?
IBM WebSphere 6.1 it's supossed to support JSR 160 JavaTM Management Extensions (JMX) Remote API. Furthermore, it uses the MX4J implementation (http://mx4j.sourceforge.net). But I can't make it works with neither "jconsole" nor "MC4J".
I have the Classpath and the JAVA_HOME correctly setted, so the issue it's not there.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
发布评论
评论(7)
WebSphere 对 JMX 的支持很糟糕。 特别是,如果您需要连接到任何安全的 JMX bean。 这里有一个有趣的花絮,他们自己的 jConsole 实现不会连接到他们自己的 JVM。 我已经向 IBM 开放了一年多的 PMR 来解决这个问题,但除了解决办法之外一无所获。 他们显然不想解决这个问题。
我能够调用WebSphere 上托管的远程安全JMX bean 的唯一方法是使用“WebSphere 应用程序客户端”实现客户端。 这基本上是一个用于此类内容的精简应用程序服务器。
与 IBM 建立 PMR。 也许如果更多的人报告这个问题,他们就会真正解决它。
更新:您可以在 RAD 中将应用程序作为 WebSphere 应用程序客户端运行。 打开运行菜单,然后选择“运行...”。 在打开的对话框中,在左侧底部,您将看到“WebSphere v6.1 Application Client”。 我不确定如何在 RAD 之外启动应用程序客户端。
有用 !
1) Change the config.xml and start the server.
- 请参阅此处如何更改 config.xml: http://publib .boulder.ibm.com/wasce/V2.1.0/en/working-with-jconsole.html
2) start the jconsole with : jconsole -J-Djavax.net.ssl.keyStore=%GERONIMO_HOME%\var\security\keystores\geronimo-default -J-Djavax.net.ssl.keyStorePassword=secret -J-Djavax.net.ssl.trustStore=%GERONIMO_HOME%\var\security\keystores\geronimo-default -J-Djavax.net.ssl.trustStorePassword=secret -J-Djava.class.path=%JAVA_HOME%\lib\jconsole.jar;%JAVA_HOME%\lib\tools.jar;%GERONIMO_HOME%\repository\org\apache\geronimo\framework\geronimo-kernel\2.1.4\geronimo-kernel-2.1.4.jar
[或您的 geronimo-kernel jar 版本]
3) in the jconsole interface->advanced, input:
JMX URL: service:jmx:rmi:///jndi/rmi://localhost:1099/JMXSecureConnector
user name: system
password: manager
4) click the connect button.
如果您想要 WebSphere MBeans,那么这个对我有用:
关键是正确配置类路径和安全性。
一行:
jconsole -J-Dwas.install.root=C:/was61 -J-Djava.ext.dirs=C:/was61/plugins;C:/was61/plugins/com.ibm.ws.security.crypto_6 .1.0;C:/was61/lib;C:/was61/java/jre/lib/ext -J-Dcom.ibm.SSL.ConfigURL="文件:../../properties/ssl.client.props" -J-Dcom.ibm.CORBA.ConfigURL="file:../../properties/sas.client.props" service:jmx:iiop://host:port/jndi/JMXConnector
其中 port = 引导端口 ex: (2809)
设置 sas 和 ssl 属性时要小心。
罗伯特
我已使用 JConsole 成功连接到 ActiveMQ 和 ServiceMix。 WAS 6.1 是否使用 Java 管理扩展 (JMX) 技术? JConsole 需要 JMX。
如果您的路径设置正确,它应该可以正常工作。 在 Windows 上,您转到系统属性 -> 高级选项卡 -> 环境变量。 将 JAVA_HOME 系统变量设置为 JDK 或 JRE 的路径,并在 Path 变量中添加 %JAVA_HOME%/bin 。 然后您需要做的就是转到“开始”->“运行”->JConsole。 选择正确的进程名称即可完成。
你是哪里出了问题? 我希望这有帮助。
编辑:
这是 JConsole 上的 Java 文档。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
你们似乎都错了。 我正在运行 Websphere 6.1.041 ,使用 JDK 1.5 ,我刚刚启动 Jconsole 并使用“简单连接”选项卡通过 port=0 连接到本地主机,并且没有用户名和密码,它工作正常。
You all seem to be incorrect. I am running Websphere 6.1.041 , using JDK 1.5 , and I just started up Jconsole and used the "simple connect" tab to connect to localhost with port=0 and without a username and password and it works fine.