Not sure if related, but JPDA address config changed from - JPDA_ADDRESS=8000 on Tomcat 8 to - JPDA_ADDRESS=*:8000 on Tomcat 9 (i.e. host needs to be included, or a wildcard).
On Tue, Feb 2, 2021 at 12:22 PM Suvendu Sekhar Mondal <suv3...@gmail.com> wrote: > > 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 > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org