activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Timothy Bish (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (AMQ-2740) NullPointerException in Web Console when using an existing browser session with a restarted broker instance
Date Thu, 06 Dec 2012 20:39:09 GMT

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

Timothy Bish resolved AMQ-2740.
-------------------------------

       Resolution: Fixed
    Fix Version/s:     (was: 5.x)
                   5.8.0
         Assignee: Timothy Bish

Fixed the NPE, will log a scary possible CSRF warning now instead. 
                
> NullPointerException in Web Console when using an existing browser session with a restarted
broker instance
> -----------------------------------------------------------------------------------------------------------
>
>                 Key: AMQ-2740
>                 URL: https://issues.apache.org/jira/browse/AMQ-2740
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 5.3.2
>         Environment: Windows
>            Reporter: Adrian Trenaman
>            Assignee: Timothy Bish
>             Fix For: 5.8.0
>
>
> As per summary above. If you have a browser open to the web console, and create a queue
it works OK. However, if you then restart the broker adn then try and perform an action like
deleting the queue (from the web console) then you'll see the NPE in the broker's log. 
> {code}
> ERROR | Nested in org.springframework.web.util.NestedServletException: Request processing
failed; nested exception is java.lang.NullPointerException:
> java.lang.NullPointerException
>         at org.apache.activemq.web.handler.BindingBeanNameUrlHandlerMapping.getHandlerInternal(BindingBeanNameUrlHandlerMapping.java:57)
>         at org.springframework.web.servlet.handler.AbstractHandlerMapping.getHandler(AbstractHandlerMapping.java:184)
>         at org.springframework.web.servlet.DispatcherServlet.getHandler(DispatcherServlet.java:1057)
>         at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:854)
>         at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:807)
>         at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:571)
>         at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:501)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
>         at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
>         at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093)
>         at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:83)
>         at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
>         at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
>         at org.apache.activemq.web.filter.ApplicationContextFilter.doFilter(ApplicationContextFilter.java:81)
>         at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
>         at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118)
>         at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)
>         at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
>         at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
>         at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>         at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
>         at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:726)
>         at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
>         at org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:206)
>         at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
>         at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
>         at org.mortbay.jetty.Server.handle(Server.java:324)
>         at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:505)
>         at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:828)
>         at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
>         at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
>         at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:380)
>         at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:395)
>         at org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:450)
> {code} 
> I think this has something to do with stale session secrets, and is a consequence of
support that was put in to protect ActiveMQ against CSRF (cross-site request forgery) attacks.
The original CSRF error was alarming; this error, however, is a plain old NPE and we should
fix it.

--
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

Mime
View raw message