-
1. Re: Wildfly10 client connection to JMX subsystem
mayerw01 Jul 8, 2016 6:11 AM (in response to rbenkovitz)I think there is nothing special to WildFly regarding JMX. If you check the Oracle documentation Creating a Custom JMX Client (The Java™ Tutorials > Java Management Extensions (JMX) > Remote Managem…
you will also find a few simple examples.
You should take the WildFly management port. So the URL should look like
service:jmx:remote+http://localhost:9990
But you should also make sure that the WildFly jars (from $JBOSS_HOME/modules/system/layers/base/) are included in the Java classpath.
-
2. Re: Wildfly10 client connection to JMX subsystem
rbenkovitz Jul 8, 2016 11:50 AM (in response to mayerw01)Thank you for the reply Wolfgang - much appreciated.
I've tried to connect using the URL you mentioned above, but I keep getting an "Unknown service name" exception as below:
serviceURL = service:jmx:remote+http://172.31.62.219:9990
Exception in thread "main" java.io.IOException: Unknown service name
at org.jboss.remoting3.remote.RemoteReadListener.handleEvent(RemoteReadListener.java:432)
at org.jboss.remoting3.remote.RemoteReadListener.handleEvent(RemoteReadListener.java:46)
at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92)
at org.xnio.channels.TranslatingSuspendableChannel.handleReadable(TranslatingSuspendableChannel.java:199)
at org.xnio.channels.TranslatingSuspendableChannel$1.handleEvent(TranslatingSuspendableChannel.java:113)
at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92)
at org.xnio.ChannelListeners$DelegatingChannelListener.handleEvent(ChannelListeners.java:1092)
at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92)
at org.xnio.conduits.ReadReadyHandler$ChannelListenerHandler.readReady(ReadReadyHandler.java:66)
at org.xnio.nio.NioSocketConduit.handleReady(NioSocketConduit.java:88)
at org.xnio.nio.WorkerThread.run(WorkerThread.java:559)
You mention the "WildFly jars" - which ones? I'm currently including the $JBOSS_HOME/bin/client/jboss-client.jar file, but nothing else specific to jmx - should I be including other jars?
Thanks again.
-
3. Re: Wildfly10 client connection to JMX subsystem
mayerw01 Jul 9, 2016 5:41 AM (in response to rbenkovitz)This script is working in my environment.
if [ ${#JBOSS_VERSION} -eq 0 ]
then JBOSS_VERSION='WildFly'
fi
if [ $JBOSS_VERSION = 'AS7' ]
then
# JBoss AS7
echo 'using AS7 configuration'
JBOSS_MODULEPATH=$JBOSS_HOME/modules
MODULES="org/jboss/remoting3/remoting-jmx org/jboss/remoting3 org/jboss/logging org/jboss/xnio org/jboss/xnio/nio org/jboss/sasl org/jboss/marshalling org/jboss/marshalling/river org/jboss/as/cli org/jboss/staxmapper org/jboss/as/protocol org/jboss/dmr org/jboss/as/controller-client org/jboss/threads org/jboss/as/controller"
elif [ $JBOSS_VERSION = 'EAP6' ]
then
# EAP6
echo 'using EAP6 configuration'
JBOSS_MODULEPATH=$JBOSS_HOME/modules/system/layers/base/
MODULES="org/jboss/remoting-jmx org/jboss/remoting3 org/jboss/logging org/jboss/xnio org/jboss/xnio/nio org/jboss/sasl org/jboss/marshalling org/jboss/marshalling/river org/jboss/as/cli org/jboss/staxmapper org/jboss/as/protocol org/jboss/dmr org/jboss/as/controller-client org/jboss/threads org/jboss/as/security"
else
# WildFly
echo 'using WildFly configuration'
JBOSS_MODULEPATH=$JBOSS_HOME/modules/system/layers/base/
MODULES="org/jboss/remoting-jmx org/jboss/remoting org/jboss/logging org/jboss/xnio org/jboss/xnio/nio org/jboss/sasl org/jboss/marshalling org/jboss/marshalling/river org/jboss/as/cli org/jboss/staxmapper org/jboss/as/protocol org/jboss/dmr org/jboss/as/controller-client org/jboss/threads"
fi
for MODULE in $MODULES
do
for JAR in `cd "$JBOSS_MODULEPATH/$MODULE/main/" && ls -1 *.jar`
do
CLASSPATH="$CLASSPATH:$JBOSS_MODULEPATH/$MODULE/main/$JAR"
done
done
CLASSPATH=$CLASSPATH:${myClassPath}
java -cp $CLASSPATH ${ClassFile} "$@"