Uploaded image for project: 'JBoss BPMS Platform'
  1. JBoss BPMS Platform
  2. RHBPMS-5209

NPE when invalidating users session on Tomcat8

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 6.4.11.GA
    • 6.4.11.GA
    • Business Central
    • JAVA: JDK 1.8
      OS: RHEL7
      CONTAINER: JWS 3.1/Tomcat 8

    • CR1
    • CR2
    • Hide

      1. Run business-central & kie-server on Tomcat8 (setup differetn db's for each)
      2. Log in with your user account
      3. Log out with your user account
      4. See NPE exception in logs

      Show
      1. Run business-central & kie-server on Tomcat8 (setup differetn db's for each) 2. Log in with your user account 3. Log out with your user account 4. See NPE exception in logs
    • 2018 Week 30-32

      Null pointer exception is raised when user logs out and its session is being invalidated.

      Analysis suggests that this issue is caused by WELD not properly Injecting on Tomcat container.
      Github link to class
      AuthorizationManager doesn't get injected on JWS 3.1.

      Full stack trace:

      Aug 02, 2018 9:08:10 AM org.apache.catalina.session.StandardSession expire
      SEVERE: Session event listener threw exception
      java.lang.NullPointerException
      	at org.uberfire.ext.security.server.CleanupSecurityCacheSessionListener.sessionDestroyed(CleanupSecurityCacheSessionListener.java:58)
      	at org.apache.catalina.session.StandardSession.expire(StandardSession.java:837)
      	at org.apache.catalina.session.StandardSession.expire(StandardSession.java:779)
      	at org.apache.catalina.authenticator.SingleSignOn.expire(SingleSignOn.java:445)
      	at org.apache.catalina.authenticator.SingleSignOn.deregister(SingleSignOn.java:405)
      	at org.apache.catalina.authenticator.AuthenticatorBase.register(AuthenticatorBase.java:899)
      	at org.apache.catalina.authenticator.AuthenticatorBase.logout(AuthenticatorBase.java:951)
      	at org.apache.catalina.connector.Request.logout(Request.java:2695)
      	at org.apache.catalina.connector.RequestFacade.logout(RequestFacade.java:1077)
      	at org.uberfire.ext.security.server.ServletSecurityAuthenticationService.logout(ServletSecurityAuthenticationService.java:76)
      	at org.uberfire.ext.security.server.ServletSecurityAuthenticationService$Proxy$_$$_WeldClientProxy.logout(ServletSecurityAuthenticationService$Proxy$_$$_WeldClientProxy.java)
      	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      	at java.lang.reflect.Method.invoke(Method.java:498)
      	at org.jboss.errai.bus.server.io.AbstractRPCMethodCallback.invokeMethodFromMessage(AbstractRPCMethodCallback.java:48)
      	at org.jboss.errai.bus.server.io.VoidRPCEndpointCallback.callback(VoidRPCEndpointCallback.java:20)
      	at org.jboss.errai.bus.server.io.RemoteServiceCallback.callback(RemoteServiceCallback.java:54)
      	at org.jboss.errai.cdi.server.CDIExtensionPoints$2.callback(CDIExtensionPoints.java:396)
      	at org.jboss.errai.bus.server.DeliveryPlan.deliver(DeliveryPlan.java:47)
      	at org.jboss.errai.bus.server.ServerMessageBusImpl.sendGlobal(ServerMessageBusImpl.java:297)
      	at org.jboss.errai.bus.server.SimpleDispatcher.dispatchGlobal(SimpleDispatcher.java:46)
      	at org.jboss.errai.bus.server.service.ErraiServiceImpl.store(ErraiServiceImpl.java:97)
      	at org.jboss.errai.bus.server.service.ErraiServiceImpl.store(ErraiServiceImpl.java:114)
      	at org.jboss.errai.bus.server.servlet.DefaultBlockingServlet.doPost(DefaultBlockingServlet.java:142)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:648)
      	at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:292)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
      	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
      	at org.uberfire.ext.security.server.SecureHeadersFilter.doFilter(SecureHeadersFilter.java:69)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
      	at org.uberfire.ext.security.server.SecurityIntegrationFilter.doFilter(SecurityIntegrationFilter.java:57)
      	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:240)
      	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:207)
      	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:212)
      	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:106)
      	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:606)
      	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:141)
      	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
      	at org.kie.integration.tomcat.JACCValve.invoke(JACCValve.java:101)
      	at org.apache.catalina.authenticator.SingleSignOn.invoke(SingleSignOn.java:291)
      	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:616)
      	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:88)
      	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:528)
      	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1100)
      	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:687)
      	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1538)
      	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:1494)
      	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
      	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
      	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
      	at java.lang.Thread.run(Thread.java:748)
      

            abakos@redhat.com Alexandre Bakos
            dhanak@redhat.com Dominik Hanak
            Dominik Hanak Dominik Hanak
            Dominik Hanak Dominik Hanak
            Alexandre Bakos
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: