JBoss AS 7 はさまざまな管理インターフェースを提供します。Detyped Management 表現 (jboss-dmr) に基づくすべての管理インターフェース。
jboss-dmr ライブラリと jboss-as-controller-client を使用してカスタム Java クライアントを実装できます。例については、github リポジトリを参照してください。
JVM などに関する情報を取得するには、次の操作を実装する必要があります。
ModelNode operation = new ModelNode();
operation.get("operation").set("read-resource");
operation.get("recursive").set(true);
operation.get("include-runtime").set(true);
ModelNode address = operation.get("address");
address.add("core-service", "platform-mbean");
または、PlatformMBeanServer を使用することもできます。
//Get a connection to the JBoss AS MBean server on localhost
String host = "localhost";
int port = 9999; // management-native port
String urlString = "service:jmx:remoting-jmx://" + host + ":" + port;
JMXServiceURL serviceURL = new JMXServiceURL(urlString);
JMXConnector jmxConnector = JMXConnectorFactory.connect(serviceURL, null);
MBeanServerConnection connection = jmxConnector.getMBeanServerConnection();
//Invoke on the JBoss AS MBean server
connection.getObjectInstance(new ObjectName("java.lang:type=Threading"));
//...
jmxConnector.close();