2017-01-27 1 views
1

auszulösen Meine Anwendung läuft auf Wildfly-8.0.1. Momentan kann ich MBean-Methoden über JConsole mithilfe des Diensts auslösen: jmx: http-remoting-jmx: // localhost: 9990.Versuchen, JMX Mbean Funktionen über die Befehlszeile

Ich möchte ein Skript schreiben, um diese Befehle auszulösen, aber ich habe kein unterstützendes Werkzeug gefunden, um das zu erreichen.

Ich habe versucht, unter Werkzeuge, aber es scheint, wie sie http-Remoting-JMX-Protokoll nicht unterstützen oder sein kann ich nicht 1. JMXTerm 2. Cmdline_JMXClient 3. JManage 4. CJMX

in richtigen Weg bin mit Hier

ist der Fehler von JMXTerm

$> open Service: JMX: http-Remoting-JMX: // localhost: 9990 RuntimeIOException: Runtime IO Ausnahme: Nicht unterstütztes Protokoll: http-Remoting-j mx

jede Hilfe würde sehr geschätzt werden.

Antwort

0

Erstellen Sie benutzerdefinierte JAR-Datei mit unter Klasse.

import javax.management.MBeanServerConnection; 
import javax.management.ObjectName; 
import javax.management.remote.JMXConnector; 
import javax.management.remote.JMXConnectorFactory; 
import javax.management.remote.JMXServiceURL; 

public class JMXCli { 

    //private static List<String> operations; 

    private static final String SERVICE_URL = "service:jmx:http-remoting-jmx://"; 

    public static void main(String[] args) throws Exception { 

     JMXServiceURL url = new JMXServiceURL(SERVICE_URL + args[0]); 

     JMXConnector connector = JMXConnectorFactory.connect(url); 

     MBeanServerConnection connection = connector.getMBeanServerConnection(); 

     ObjectName objectName = new ObjectName("com.xyz.com:name=<<Your MBean class name>>"); 

     System.out.println(connection.invoke(objectName, args[1], null, null)); 

    } 
} 
Verwandte Themen