我在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,所以问题不在那里。
答案 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工作!
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,没有用户名和密码,工作正常。