如何使“jconsole”与Websphere 6.1一起使用?

时间:2008-08-26 09:03:21

标签: java websphere jmx mbeans

我在WebSphere 6.1上部署了一些Managed Beans并且我已经设法通过独立客户端调用它们,但是当我尝试使用与标准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,所以问题不在那里。

7 个答案:

答案 0 :(得分:5)

WebSphere对JMX的支持是垃圾。特别是,如果您需要连接到任何安全的JMX bean。这是一个有趣的小问题,他们自己的jConsole实现不会连接到自己的JVM。我已经与IBM开了一个PMR超过一年的时间来解决这个问题,除了周围的事情之外什么都没有。他们显然不想解决这个问题。

我能够调用WebSphere上托管的远程安全JMX bean的唯一方法是使用“WebSphere应用程序客户端”实现客户端。这基本上是一个用于此类内容的精简应用服务器。

与IBM合作开设PMR。也许如果有更多人报告此问题,他们实际上会修复它。

  

更新:您可以在RAD中将您的应用程序作为WebSphere Application Client运行。打开运行菜单,然后选择“运行...”。在打开的对话框中,在左侧底部,您将看到“WebSphere v6.1 Application Client”。我不确定如何在RAD之外启动和应用客户端。

答案 1 :(得分:1)

IT工作!

http://issues.apache.org/jira/browse/GERONIMO-4534;jsessionid=FB20DD5973F01DD2D470FB9A1B45D209?page=com.atlassian.jira.plugin.system.issuetabpanels%3Aall-tabpanel

  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.

答案 2 :(得分:1)

如果您想要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 =“file:../../ properties / ssl.client.props” - J-Dcom.ibm.CORBA.ConfigURL =“file:../../ properties / sas.client.props”service:jmx:iiop:// host:port / jndi / JMXConnector

其中port = bootstrap port ex:(2809)

设置sas和ssl道具时要小心。

罗伯特

答案 3 :(得分:0)

我已使用JConsole成功连接到ActiveMQ和ServiceMix。 WAS 6.1是否使用Java Management Extension(JMX)技术? JConsole需要JMX。

如果您的路径设置正确,它应该可以正常工作。在Windows上,您可以转到系统属性 - >高级选项卡 - >环境变量。将您的JAVA_HOME系统变量设置为JDK或JRE的路径,并在其中的某处添加%JAVA_HOME%/ bin的Path变量。然后,您需要做的就是转到Start-> Run-> JConsole。选择正确的流程名称和完成后。

你在哪里遇到问题?我希望这会有所帮助。

编辑: 以下是JConsole上的Java Doc。

答案 4 :(得分:0)

嗯......我知道WebSphere很难配置。这就是我们为ESB使用ServiceMix的部分原因。也许它在WebSphere中没有默认启用,你必须在配置的某个地方打开它。

答案 5 :(得分:0)

Websphere 6.1由于某些原因不支持JConsole,即使它完全实现了JMS规范。现在似乎是一周的区域。您最好的选择是查看Admin客户端以实现您自己的控制台。

答案 6 :(得分:0)

你们似乎都是不正确的。我正在运行Websphere 6.1.041,使用JDK 1.5,我刚启动Jconsole并使用“简单连接”选项卡连接到localhost,端口= 0,没有用户名和密码,工作正常。