0

現在、Spring を使用して JMX Bean をエクスポートしていますが、非常に満足しています。別のコンテナー (Jetty、Tomcat など) で実行している場合、JConsole または JVisualVM を使用して簡単に接続し、MBean にアクセスできます。

WebSphere でJMX を有効にする方法の手順を使用して WebSphere に接続しようとしましたが、成功しませんでした。

WebSphere Application Server 7.0 で実行されているアプリケーションで JMX Bean にアクセスする簡単な方法はありますか?

4

1 に答える 1

1

WebSphere7 JMXに接続できないのか、接続できるがエクスポートされたMBeanが表示されないのかわからない。後者の場合、WASでは技術的に複数のインスタンスが実行されているため、間違ったMBeanServerインスタンスを見ている可能性があります。

いずれにせよ、そのナンセンスをすべて回避するには、SpringXMLにJMXConnectorServer定義を追加するのが最善の策です。このようにして、JMX接続の確立方法を正確に制御し、標準のJ2SE RMIリモーティングを使用するため、JConsoleが簡単に接続できることがわかります。

次に例を示します。

<bean id="MBeanServer"
    class="org.helios.jmx.util.MBeanServerFactory" lazy-init="false" factory-method="createMBeanServer">
    <constructor-arg type="java.lang.String" value="DefaultDomain" />
</bean>

<bean id="MBeanServerJMXUrl"
    class="javax.management.remote.JMXServiceURL" lazy-init="false">
    <constructor-arg type="java.lang.String" value="service:jmx:rmi:///jndi/rmi://localhost:8003/jmxrmi" />
</bean>

<bean id="RMIRegistry"
    class="java.rmi.registry.LocateRegistry" 
        lazy-init="false" 
        factory-method="createRegistry">
    <constructor-arg value="8003" />
</bean>


<bean id="MBeanServerConnector"
    class="javax.management.remote.JMXConnectorServerFactory" 
        lazy-init="false" 
        init-method="start"
        factory-method="newJMXConnectorServer"
        depends-on="RMIRegistry">
    <constructor-arg ref="MBeanServerJMXUrl" />
    <constructor-arg>
        <map/>
    </constructor-arg>
    <constructor-arg ref="MBeanServer" />
</bean>
于 2011-04-20T14:41:16.477 に答える