Hello Everyone, We recently migrated Tomcat from 7.0.55 to 9.0.39. Everything is working as expected except accessing exposed MBeans via JMX clients like jconsole/jvisualvm. While troubleshooting the issue, I enabled debug logging for both of those tools and it is throwing following error: java.rmi.ConnectIOException: non-JRMP server at remote endpoint at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:248) at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:202) at sun.rmi.server.UnicastRef.newCall(UnicastRef.java:338) at sun.rmi.registry.RegistryImpl_Stub.lookup(RegistryImpl_Stub.java:112) at sun.tools.jconsole.ProxyClient.checkSslConfig(ProxyClient.java:234) at sun.tools.jconsole.ProxyClient.<init>(ProxyClient.java:127) at sun.tools.jconsole.ProxyClient.getProxyClient(ProxyClient.java:475) at sun.tools.jconsole.JConsole$3.run(JConsole.java:524)
We are using org.apache.catalina.mbeans.JmxRemoteLifecycleListener to specify RMI registry and server port like this: <Listener className="org.apache.catalina.mbeans.JmxRemoteLifecycleListener" rmiRegistryPortPlatform="8181" rmiServerPortPlatform="8282" /> And we can see that TC is registering properly to those ports: 2021-02-02 05:07:08,541 INFO org.apache.catalina.mbeans.JmxRemoteLifecycleListener - The JMX Remote Listener has configured the registry on port [8181] and the server on port [8282] for the [Platform] server We use remote JMX with no authentication or SSL: -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false Workaround is to add following options in JVM arguments and then I was able to use JMX on port 8181: -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8181 But I am not sure why it broke in Tomcat 9.0.39 in the first place because with a similar configuration we are able to access JMX on Tomcat 7.0.55. I noticed that JmxRemoteLifecycleListener has been deprecated and will be removed in future[1] but we are on a version which was released 3-4 months ago. So, could this be a bug or something else? [1] 2021-02-02 05:07:07,447 WARNING org.apache.catalina.mbeans.JmxRemoteLifecycleListener - The JmxRemoteLifecycleListener is deprecated as as the features it provides are now available in the remote JMX capability included with the JRE. This listener will be removed in Tomcat 10 and may be removed from Tomcat 9 some time after 2020-12-31. JDK version: jdk1.8.0_192 OS: Windows Server 2016 Thanks & Regards, Suvendu --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org