[ 
https://issues.apache.org/jira/browse/AMQ-3132?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Stephan Siano closed AMQ-3132.
------------------------------

    Resolution: Won't Fix

Since this issue was not touched for more than two years, I close it.
                
> Web Console fails on Equinox OSGi server
> ----------------------------------------
>
>                 Key: AMQ-3132
>                 URL: https://issues.apache.org/jira/browse/AMQ-3132
>             Project: ActiveMQ
>          Issue Type: Bug
>    Affects Versions: 5.4.2
>            Reporter: Stephan Siano
>            Priority: Minor
>
> I tried to run the activemq-web-console bundle on an equinox based OSGi 
> runtime. Essentially I was following the description on the web console 
> section of the http://activemq.apache.org/osgi-integration.html page. However 
> when I try to access any of the pages, I get an exception:
> 15:09:30.736 WARN  [qtp1617610261-54] org.eclipse.jetty.util.log 
> [Slf4jLog.java:50] - /activemqweb/index.jsp
> javax.el.ELException: Error reading 'brokerName' on type 
> org.apache.activemq.web.RemoteJMXBrokerFacade
>       at javax.el.BeanELResolver.getValue(BeanELResolver.java:66) ~[na:na]
>       at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:53) 
> ~[na:na]
>       at org.apache.el.parser.AstValue.getValue(AstValue.java:118) ~[na:na]
>       at 
> org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186) 
> ~[na:na]
>       at 
> org.apache.jasper.runtime.PageContextImpl.proprietaryEvaluate(PageContextImpl.java:925)
>  ~[na:na]
>       at org.apache.jsp.index_jsp._jspService(index_jsp.java:75) ~[na:na]
>       at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 
> ~[na:na]
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:806) 
> ~[org.apache.geronimo.specs.geronimo-servlet_2.5_spec-1.1.1.jar:1.1.1]
>       at 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:374)
>  ~[na:na]
>       at 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342) 
> ~[na:na]
>       at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267) 
> ~[na:na]
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:806) 
> ~[org.apache.geronimo.specs.geronimo-servlet_2.5_spec-1.1.1.jar:1.1.1]
>       at 
> org.ops4j.pax.web.jsp.JspServletWrapper$2.call(JspServletWrapper.java:132) 
> ~[na:na]
>       at 
> org.ops4j.pax.web.jsp.JspServletWrapper$2.call(JspServletWrapper.java:127) 
> ~[na:na]
>       at 
> org.ops4j.pax.swissbox.core.ContextClassLoaderUtils.doWithClassLoader(ContextClassLoaderUtils.java:60)
>  ~[na:na]
>       at 
> org.ops4j.pax.web.jsp.JspServletWrapper.service(JspServletWrapper.java:124) 
> ~[na:na]
>       at 
> org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:527) 
> ~[na:na]
>       at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1216)
>  ~[na:na]
>       at 
> org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:83)
>  ~[spring-web-3.0.3.RELEASE.jar:3.0.3.RELEASE]
>       at 
> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
>  ~[spring-web-3.0.3.RELEASE.jar:3.0.3.RELEASE]
>       at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1187)
>  ~[na:na]
>       at 
> org.apache.activemq.web.SessionFilter.doFilter(SessionFilter.java:45) 
> ~[activemq-web-5.4.2.jar:5.4.2]
>       at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1187)
>  ~[na:na]
>       at 
> org.apache.activemq.web.filter.ApplicationContextFilter.doFilter(ApplicationContextFilter.java:81)
>  ~[bundlefile:5.4.2]
>       at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1187)
>  ~[na:na]
>       at 
> com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118)
>  ~[sitemesh-2.2.1.jar:na]
>       at 
> com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)
>  ~[sitemesh-2.2.1.jar:na]
>       at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1187)
>  ~[na:na]
>       at 
> org.ops4j.pax.web.service.internal.WelcomeFilesFilter.doFilter(WelcomeFilesFilter.java:169)
>  ~[na:na]
>       at 
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1187)
>  ~[na:na]
>       at 
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:421) 
> ~[na:na]
>       at 
> org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:65)
>  ~[na:na]
>       at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119) 
> ~[na:na]
>       at 
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:493) 
> ~[na:na]
>       at 
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:225)
>  ~[na:na]
>       at 
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:930)
>  ~[na:na]
>       at 
> org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:116)
>  ~[na:na]
>       at 
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:358) 
> ~[na:na]
>       at 
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:183)
>  ~[na:na]
>       at 
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:866)
>  ~[na:na]
>       at 
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117) 
> ~[na:na]
>       at 
> org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:72)
>  ~[na:na]
>       at 
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:113)
>  ~[na:na]
>       at org.eclipse.jetty.server.Server.handle(Server.java:351) ~[na:na]
>       at 
> org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:594)
>  ~[na:na]
>       at 
> org.eclipse.jetty.server.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:1042)
>  ~[na:na]
>       at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:549) 
> ~[na:na]
>       at 
> org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:211) ~[na:na]
>       at 
> org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:424) 
> ~[na:na]
>       at 
> org.eclipse.jetty.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:506)
>  ~[na:na]
>       at 
> org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:436)
>  ~[na:na]
>       at java.lang.Thread.run(Unknown Source) ~[na:1.6.0_22]
> Caused by: java.lang.RuntimeException: java.io.IOException: Failed to 
> retrieve RMIServer stub: javax.naming.CommunicationException [Root exception 
> is java.rmi.UnmarshalException: error unmarshalling return; nested exception 
> is: 
>       java.lang.ClassNotFoundException: 
> javax.management.remote.rmi.RMIServerImpl_Stub (no security manager: RMI 
> class loader disabled)]
>       at 
> org.apache.activemq.web.RemoteJMXBrokerFacade.createConnection(RemoteJMXBrokerFacade.java:165)
>  ~[activemq-web-5.4.2.jar:5.4.2]
>       at 
> org.apache.activemq.web.RemoteJMXBrokerFacade.getMBeanServerConnection(RemoteJMXBrokerFacade.java:114)
>  ~[activemq-web-5.4.2.jar:5.4.2]
>       at 
> org.apache.activemq.web.RemoteJMXBrokerFacade.getBrokerAdmin(RemoteJMXBrokerFacade.java:88)
>  ~[activemq-web-5.4.2.jar:5.4.2]
>       at 
> org.apache.activemq.web.RemoteJMXBrokerFacade.getBrokerName(RemoteJMXBrokerFacade.java:101)
>  ~[activemq-web-5.4.2.jar:5.4.2]
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
>       at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[na:na]
>       at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
> ~[na:na]
>       at java.lang.reflect.Method.invoke(Unknown Source) ~[na:1.6.0_22]
>       at javax.el.BeanELResolver.getValue(BeanELResolver.java:62) ~[na:na]
>       ... 51 common frames omitted
> Caused by: java.io.IOException: Failed to retrieve RMIServer stub: 
> javax.naming.CommunicationException [Root exception is 
> java.rmi.UnmarshalException: error unmarshalling return; nested exception is: 
>       java.lang.ClassNotFoundException: 
> javax.management.remote.rmi.RMIServerImpl_Stub (no security manager: RMI 
> class loader disabled)]
>       at javax.management.remote.rmi.RMIConnector.connect(Unknown Source) 
> ~[na:na]
>       at javax.management.remote.JMXConnectorFactory.connect(Unknown Source) 
> ~[na:1.6.0_22]
>       at 
> org.apache.activemq.web.RemoteJMXBrokerFacade.createConnection(RemoteJMXBrokerFacade.java:146)
>  ~[activemq-web-5.4.2.jar:5.4.2]
>       ... 59 common frames omitted
> Caused by: javax.naming.CommunicationException: null
>       at com.sun.jndi.rmi.registry.RegistryContext.lookup(Unknown Source) 
> ~[na:1.6.0_22]
>       at com.sun.jndi.toolkit.url.GenericURLContext.lookup(Unknown Source) 
> ~[na:1.6.0_22]
>       at javax.naming.InitialContext.lookup(Unknown Source) ~[na:1.6.0_22]
>       at javax.management.remote.rmi.RMIConnector.findRMIServerJNDI(Unknown 
> Source) ~[na:na]
>       at javax.management.remote.rmi.RMIConnector.findRMIServer(Unknown 
> Source) ~[na:na]
>       ... 62 common frames omitted
> Caused by: java.rmi.UnmarshalException: error unmarshalling return; nested 
> exception is: 
>       java.lang.ClassNotFoundException: 
> javax.management.remote.rmi.RMIServerImpl_Stub (no security manager: RMI 
> class loader disabled)
>       at sun.rmi.registry.RegistryImpl_Stub.lookup(Unknown Source) ~[na:na]
>       ... 67 common frames omitted
> Caused by: java.lang.ClassNotFoundException: 
> javax.management.remote.rmi.RMIServerImpl_Stub (no security manager: RMI 
> class loader disabled)
>       at sun.rmi.server.LoaderHandler.loadClass(Unknown Source) ~[na:na]
>       at sun.rmi.server.LoaderHandler.loadClass(Unknown Source) ~[na:na]
>       at java.rmi.server.RMIClassLoader$2.loadClass(Unknown Source) 
> ~[na:1.6.0_22]
>       at java.rmi.server.RMIClassLoader.loadClass(Unknown Source) 
> ~[na:1.6.0_22]
>       at sun.rmi.server.MarshalInputStream.resolveClass(Unknown Source) 
> ~[na:na]
>       at java.io.ObjectInputStream.readNonProxyDesc(Unknown Source) 
> ~[na:1.6.0_22]
>       at java.io.ObjectInputStream.readClassDesc(Unknown Source) 
> ~[na:1.6.0_22]
>       at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source) 
> ~[na:1.6.0_22]
>       at java.io.ObjectInputStream.readObject0(Unknown Source) ~[na:1.6.0_22]
>       at java.io.ObjectInputStream.readObject(Unknown Source) ~[na:1.6.0_22]
>       ... 68 common frames omitted
> This exception essentially says that the RMIServerImpl_Stub from the 
> javax.management.remote.rmi package (this is from the JRE) is not available 
> to the bundle, which is not so surprising because the bundle does not import 
> that package.
> I have also tested this with karaf and it works there, though I have no clue 
> why it works, probably it is using the RMI class loader which is probably 
> unwanted for a JDK provided class.
> As a workaround I added javax.management.remote.rmi to bootdelegation and it 
> works now, however in my opinion this should be added to the manifest of the 
> war file (this is defined in activemq-web-console/pom.xml).

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to