我正在尝试通过JMX公开Apache Camels MBean,以便我可以在WebSphere Application Server(7.0)中管理已部署的Camel实例。
实际上,我不知道这是否与Camel有关,但更多的是如何从WebSphere公开MBean的问题。
连接到JConsole可以很好地列出Camel MBean。但是,在尝试调用任何操作时,我都会被拒绝访问。
The user UNAUTHENTICATED (unique ID: unauthenticated) was not granted any of the following required roles: operator, administrator.
似乎也可能无法创建其中一些MBean(来自WAS日志)。
[2012-12-29 16:17:15:328 CET] 00000010 PlatformMBean W Failed to activate MBean org.yourname:cell=segotw10099999Node01Cell,name="marshal13",context=segotw10099999/camelContext,type=processors,node=segotw10099999,process=server1
我正在联系这样的事情:
start %WAS_JDK_HOME%/bin/jconsole -J-Djava.class.path=%WAS_JDK_HOME%\lib\tools.jar;%WAS_JDK_HOME%\lib\jconsole.jar;%WAS_HOME%\runtimes\com.ibm.ws.admin.client_7.0.0.jar service:jmx:iiop://localhost:2809/jndi/JMXConnector
我还尝试将具有管理权限的用户(以及“管理员”组中的用户)填入JConsole中的用户/密码文件中。
这是WebSphere的默认配置“RAD”设置,所以没什么花哨的。但是,我希望以后能够在生产服务器上使用多个应用程序和LDAP用户。
非常欢迎任何指示!
答案 0 :(得分:1)
你使用的Camel版本是什么?你是如何在Camel中配置JMX的?
当使用像WebSphere这样的服务器时,您很可能需要对它进行一些特殊配置。我们在Camel文档中提供了一些详细信息:http://camel.apache.org/camel-jmx.html#CamelJMX-WebSphere
答案 1 :(得分:1)
问题的原因可能是JConsole未正确配置为连接到受保护的WebSphere实例。虽然连接到已禁用安全性的WebSphere实例相对简单,但在启用安全性时,事情变得更加棘手。如果你想省去弄清楚如何做到这一点的麻烦,你可以按照这里给出的指示:
http://code.google.com/p/xm4was/wiki/VisualVMHowTo
它们适用于VisualVM,但我想这没关系。