Tabs in JConsole are greyed out and inaccessible

Solution Unverified - Updated

Environment

  • JDK 1.6

  • JConsole

  • JBoss Enterprise Application Platform (EAP) 4

Issue

  • We have added the following JAVA_OPTS parameters to the startup script to enable remote JMX access via JConsole:

JAVA_OPTS

export JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.port=12345"
export JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.authenticate=false"
export JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.ssl=false"
export JAVA_OPTS="$JAVA_OPTS -Djavax.management.builder.initial=org.jboss.system.server.jmx.MBeanServerBuilderImpl"
export JAVA_OPTS="$JAVA_OPTS -Djboss.platform.mbeanserver"
  • JBoss EAP starts up fine, but when after JConsole (host:port) all tabs except the MBean tab are greyed out and inaccessible.

Resolution

Try one of the following workarounds:

  • Use JConsole from JDK5. This should work even though JBoss is running on JDK6.
  • Access jmx-console. After accessing this web application all tabs should be enabled in JDK6 JConsole.
  • Run a simple script after starting JBoss that access an mbean. An example operation is twiddle.sh -s localhost:1099 -u admin -p admin info java.lang:type=Threading
  • Programatic invocation of MBean

Root Cause

Something has changed in the jconsole for JDK6, related to our implementation of the MBean server, which lazily initializes the mbeans.

JConsole for JDK5 probably performed some operation that triggered the initialization of the Mbeans and this operation is no longer done in the newer versions of JConsole (JDK6).

Tags

This solution is part of Red Hat’s fast-track publication program, providing a huge library of solutions that Red Hat engineers have created while supporting our customers. To give you the knowledge you need the instant it becomes available, these articles may be presented in a raw and unedited form.