Support Article
Error while connecting node via SMA
SA-419
Summary
Connection to a remote PRPC node from the SMA node deployed under separate JBoss-EAP-6.1 Application Server instances fails with the ERROR below.
Error Messages
com.pega.jmx.ui.util.JMXClientException: Cannot connect to the server with specified settings Unsupported protocol: remoting-jmx
at com.pega.jmx.ui.util.JMXClientException.wrap(JMXClientException.java:49)
at com.pega.jmx.ui.action.AuthenticateAction.execute(AuthenticateAction.java:319)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1480)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:506)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:734)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:295)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
at com.pega.jmx.ui.action.MultiTenantFilter.doFilter(MultiTenantFilter.java:53)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
at com.pega.jmx.ui.action.CharsetFilter.doFilter(CharsetFilter.java:59)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:246)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:214)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:149)
at org.jboss.modcluster.container.jbossweb.JBossWebContext$RequestListenerValve.event(JBossWebContext.java:91)
at org.jboss.modcluster.container.jbossweb.JBossWebContext$RequestListenerValve.invoke(JBossWebContext.java:72)
at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:169)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:145)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:97)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:102)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:336)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:653)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:926)
at java.lang.Thread.run(Thread.java:744)
Caused by: java.lang.Exception: Cannot connect to the server with specified settings Unsupported protocol: remoting-jmx
at com.pega.jmx.connection.managenodes.GenericJMXRemoteConnection.acquireConnection(GenericJMXRemoteConnection.java:64)
at com.pega.jmx.connection.managenodes.Node.getMBeanServerConnection(Node.java:405)
at com.pega.jmx.ui.action.AuthenticateAction.execute(AuthenticateAction.java:144)
... 27 more
Steps to Reproduce
Add PRPC node under SMA and connect.
Root Cause
JBoss-EAP-6.1 no longer provides support for remotely connecting to their MBeanServer over the RMI protocol. Since v6.1 JBoss have implemented their proprietary remoting-jmx protocol to remotely connect to the managed MBeanServer (Management server) which mandates use of the following connection URL - service:jmx:remoting-jmx://{host_name}:{management.native.port}
Further, any client java application trying to remotely access the JBoss MBeanServer via the remoting-jmx protocol will need to have the following client JAR in its CLASSPATH – “jboss-client.jar”
Resolution
Recommended next steps –
- Re-package the out-of-the-box 715 prsysmgmt.war file to budle the jboss-client.jar under the WEB-INF/lib directory of the prsysmgmt.war. The jboss-client.jar is usually located under the JBoss-EAP-6.1 server’s directory structure – (JBOSS_HOME/bin/client).
- Stop / disable the deployed prsysmgmt application using the JBoss admin console. And then, remove the disabled prsysmgmt application using the JBoss admin console.
- Re-deploy the re-packaged prsysmgmt.war from Step 1 above.
- Configure the remote PRPC node by launching the prsysmgmt application in a browser window and use the URL - service:jmx:remoting-jmx://{host_name}:{management.native.port} to connect to remote PRPC JVM/node.
Published March 27, 2016 - Updated October 8, 2020
Have a question? Get answers now.
Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.