3 Replies Latest reply on Jul 16, 2013 4:56 PM by crinaldi

    ErraiBus problem with version 2.4.0.Beta1

    crinaldi

      I migrated my application from version "2.3.x" to version "2.4.0.Beta1" and I have a problem with ErraiBus.

       

      12:28:36,411 ERROR [org.apache.catalina.core.ContainerBase.[jboss.web].[default-host].[/dinaru-errai].[ErraiServlet]] (http--127.0.0.1-8080-4) Servlet.service() para servlet ErraiServlet lanzó excepción: java.lang.NullPointerException

                at org.jboss.errai.bus.server.HttpSessionProvider$HttpSessionWrapper.<init>(HttpSessionProvider.java:113) [errai-bus-2.4.0.Beta1.jar:2.4.0.Beta1]

                at org.jboss.errai.bus.server.HttpSessionProvider$SessionsContainer.createSession(HttpSessionProvider.java:79) [errai-bus-2.4.0.Beta1.jar:2.4.0.Beta1]

                at org.jboss.errai.bus.server.HttpSessionProvider.createOrGetSession(HttpSessionProvider.java:60) [errai-bus-2.4.0.Beta1.jar:2.4.0.Beta1]

                at org.jboss.errai.bus.server.HttpSessionProvider.createOrGetSession(HttpSessionProvider.java:42) [errai-bus-2.4.0.Beta1.jar:2.4.0.Beta1]

                at org.jboss.errai.bus.server.servlet.StandardAsyncServlet.doGet(StandardAsyncServlet.java:48) [errai-bus-2.4.0.Beta1.jar:2.4.0.Beta1]

                at javax.servlet.http.HttpServlet.service(HttpServlet.java:734) [jboss-servlet-api_3.0_spec-1.0.0.Final.jar:1.0.0.Final]

                at javax.servlet.http.HttpServlet.service(HttpServlet.java:847) [jboss-servlet-api_3.0_spec-1.0.0.Final.jar:1.0.0.Final]

                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:329) [jbossweb-7.0.13.Final.jar:]

                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.13.Final.jar:]

                at org.jboss.weld.servlet.ConversationPropagationFilter.doFilter(ConversationPropagationFilter.java:62) [weld-core-1.1.5.AS71.Final.jar:2012-02-10 15:31]

                at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280) [jbossweb-7.0.13.Final.jar:]

                at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248) [jbossweb-7.0.13.Final.jar:]

                at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275) [jbossweb-7.0.13.Final.jar:]

                at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161) [jbossweb-7.0.13.Final.jar:]

                at org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50) [jboss-as-jpa-7.1.1.Final.jar:7.1.1.Final]

                at org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:153) [jboss-as-web-7.1.1.Final.jar:7.1.1.Final]

                at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:155) [jbossweb-7.0.13.Final.jar:]

                at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) [jbossweb-7.0.13.Final.jar:]

                at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) [jbossweb-7.0.13.Final.jar:]

                at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368) [jbossweb-7.0.13.Final.jar:]

                at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877) [jbossweb-7.0.13.Final.jar:]

                at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:671) [jbossweb-7.0.13.Final.jar:]

                at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930) [jbossweb-7.0.13.Final.jar:]

                at java.lang.Thread.run(Thread.java:724) [rt.jar:1.7.0_25]

       

      -------------------------------------------------------------------------

      Web.xml

      <?xml version="1.0" encoding="UTF-8"?>

      <web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee     http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">

         <servlet>

              <servlet-name>ErraiServlet</servlet-name>

              <servlet-class>org.jboss.errai.bus.server.servlet.DefaultBlockingServlet</servlet-class>

              <init-param>

                  <param-name>auto-discover-services</param-name>

                  <param-value>true</param-value>

              </init-param>

              <load-on-startup>1</load-on-startup>

          </servlet>

        

          <servlet-mapping>

              <servlet-name>ErraiServlet</servlet-name>

              <url-pattern>*.erraiBus</url-pattern>

          </servlet-mapping>

      </web-app>

       

      -------------------------------------------------------------------------

       

      Some parts of the project POM:

       

      ...

      <dependencyManagement>

              <dependencies>

                  <!-- JBoss distributes a complete set of Java EE 6 APIs including a

                  Bill of Materials (BOM). A BOM specifies the versions of a "stack" (or a

                  collection) of artifacts. We use this here so that we always get the correct

                  versions of artifacts. Here we use the jboss-javaee-6.0-with-tools stack (you can read

                  this as the JBoss stack of the Java EE 6 APIs). You can actually use this

                  stack with any version of JBoss AS that implements Java EE 6, not just JBoss

                  AS 7! -->

                  <dependency>

                      <groupId>org.jboss.bom</groupId>

                      <artifactId>jboss-javaee-6.0-with-tools</artifactId>

                      <version>1.0.7.CR2</version>

                      <type>pom</type>

                      <scope>import</scope>

                  </dependency>

                 

                  <dependency>

                      <groupId>org.jboss.errai.bom</groupId>

                      <artifactId>errai-version-master</artifactId>

                      <version>2.4.0.Beta1</version>

                      <type>pom</type>

                      <scope>import</scope>

                  </dependency>

       

       

                  <dependency>

                      <groupId>org.jboss.errai.bom</groupId>

                      <artifactId>errai-bom</artifactId>

                      <version>2.4.0.Beta1</version>

                      <type>pom</type>

                      <scope>import</scope>

                  </dependency>

              </dependencies>

       

       

          </dependencyManagement>

          .....

           <dependencies>

       

      <dependency>

       

              ...

        

              <groupId>org.jboss.errai</groupId>

                  <artifactId>errai-ui</artifactId>

              </dependency>

             

              <dependency>

                  <groupId>org.jboss.errai</groupId>

                  <artifactId>errai-bus</artifactId>

              </dependency>

       

              <dependency>

                  <groupId>org.jboss.errai</groupId>

                  <artifactId>errai-ioc</artifactId>

                  <exclusions>

                      <exclusion>

                          <groupId>javax.inject</groupId>

                          <artifactId>javax.inject</artifactId>

                      </exclusion>

                      <exclusion>

                          <groupId>javax.annotation</groupId>

                          <artifactId>jsr250-api</artifactId>

                      </exclusion>

                  </exclusions>

              </dependency>

             

              <dependency>

                  <groupId>org.jboss.errai</groupId>

                  <artifactId>errai-tools</artifactId>

              </dependency>

       

              <dependency>

                  <groupId>org.jboss.errai</groupId>

                  <artifactId>errai-cdi-client</artifactId>

              </dependency>

       

              <dependency>

                  <groupId>org.jboss.errai</groupId>

                  <artifactId>errai-javax-enterprise</artifactId>

                  <scope>provided</scope>

              </dependency>

             

              <dependency>

                  <groupId>org.jboss.errai</groupId>

                  <artifactId>errai-data-binding</artifactId>

                  <scope>provided</scope>

              </dependency>

             

              <dependency>

                  <groupId>org.jboss.errai</groupId>

                  <artifactId>errai-jaxrs-client</artifactId>

              </dependency>

       

              <!-- errai-cdi-jetty is only required for integration testing -->

              <dependency>

                  <groupId>org.jboss.errai</groupId>

                  <artifactId>errai-weld-integration</artifactId>

                  <exclusions>

                     

                      <exclusion>

                          <groupId>org.jboss.errai</groupId>

                          <artifactId>errai-cdi-jetty</artifactId>

                      </exclusion>

       

       

                      <exclusion>

                          <groupId>org.jboss.weld.servlet</groupId>

                          <artifactId>weld-servlet</artifactId>

                      </exclusion>

                  </exclusions>

              </dependency>

             

             

             

              <dependency>

                  <groupId>org.jboss.errai</groupId>

                  <artifactId>errai-common</artifactId>

              </dependency>

             

              <dependency>

                  <groupId>org.jboss.errai</groupId>

                  <artifactId>errai-config</artifactId>

              </dependency>

       

       

              <dependency>

                  <groupId>org.jboss.errai</groupId>

                  <artifactId>errai-marshalling</artifactId>

              </dependency>

             

              <dependency>

                  <groupId>org.jboss.errai</groupId>

                  <artifactId>errai-codegen</artifactId>

              </dependency>

             

              <dependency>

                  <groupId>org.jboss.errai</groupId>

                  <artifactId>errai-codegen-gwt</artifactId>

              </dependency>

             

              <dependency>

                  <groupId>org.jboss.errai</groupId>

                  <artifactId>errai-jboss-as-support</artifactId>

              </dependency>

             

              <dependency>

                  <groupId>org.jboss.errai</groupId>

                  <artifactId>errai-ioc-bus-support</artifactId>

              </dependency>

       

              ....

       

      <dependency>

       

      The error occurs when loading the page and I estimate that tries to initialize the bus....

       

      This is the console web output:

       

      [errai] wait for: org.jboss.errai.marshalling.client.api.MarshallerFramework 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      [errai] vote For: org.jboss.errai.marshalling.client.api.MarshallerFramework 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      [errai] wait for: org.jboss.errai.bus.client.framework.ClientMessageBus 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      [errai] wait for: org.jboss.errai.bus.client.framework.RpcProxyLoader 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      [errai] sending initial handshake to remote bus 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      [errai] wait for: org.jboss.errai.ioc.client.Container 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      [errai] IOC bootstrapper successfully initialized. 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      [errai] wait for: org.jboss.errai.databinding.client.DataBindingModuleBootstrapper 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      [errai] vote For: org.jboss.errai.databinding.client.DataBindingModuleBootstrapper 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      [errai]   still waiting for -> [org.jboss.errai.bus.client.framework.ClientMessageBus, org.jboss.errai.bus.client.framework.RpcProxyLoader, org.jboss.errai.ioc.client.Container] 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      [errai] wait for: org.jboss.errai.enterprise.client.jaxrs.JaxrsModuleBootstrapper 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      [errai] vote For: org.jboss.errai.enterprise.client.jaxrs.JaxrsModuleBootstrapper 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      [errai]   still waiting for -> [org.jboss.errai.bus.client.framework.ClientMessageBus, org.jboss.errai.bus.client.framework.RpcProxyLoader, org.jboss.errai.ioc.client.Container] 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      [errai] IOC container bootstrapped. 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      [errai] 76 beans successfully deployed. 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      [errai] vote For: org.jboss.errai.ioc.client.Container 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      [errai]   still waiting for -> [org.jboss.errai.bus.client.framework.ClientMessageBus, org.jboss.errai.bus.client.framework.RpcProxyLoader] 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      [errai] wait for: org.jboss.errai.enterprise.client.cdi.CDIClientBootstrap 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      [errai] vote For: org.jboss.errai.enterprise.client.cdi.CDIClientBootstrap 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      [errai]   still waiting for -> [org.jboss.errai.bus.client.framework.ClientMessageBus, org.jboss.errai.bus.client.framework.RpcProxyLoader] 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      1. POST http://localhost:8080/dinaru-errai/out.89886-20925.erraiBus?z=0 500 (Error Interno del Servidor) 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:5106

      [errai] received response from initial handshake. 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      Error delivering message into bus -- Additional Details: <html><head><title>JBoss Web/7.0.13.Final - Informe de Error</title><style><!--H1 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:22px;} H2 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:16px;} H3 {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;font-size:14px;} BODY {font-family:Tahoma,Arial,sans-serif;color:black;background-color:white;} B {font-family:Tahoma,Arial,sans-serif;color:white;background-color:#525D76;} P {font-family:Tahoma,Arial,sans-serif;background:white;color:black;font-size:12px;}A {color : black;}A.name {color : black;}HR {color : #525D76;}--></style> </head><body><h1>Estado HTTP 500 - </h1><HR size="1" noshade="noshade"><p><b>type</b> Informe de Excepción</p><p><b>mensaje</b> <u></u></p><p><b>descripción</b> <u>El servidor encontró un error interno () que hizo que no pudiera rellenar este requerimiento.</u></p><p><b>excepción</b> <pre>java.lang.NullPointerException org.jboss.errai.bus.server.HttpSessionProvider$HttpSessionWrapper.&lt;init&gt;(HttpSessionProvider.java:113) org.jboss.errai.bus.server.HttpSessionProvider$SessionsContainer.createSession(HttpSessionProvider.java:79) org.jboss.errai.bus.server.HttpSessionProvider.createOrGetSession(HttpSessionProvider.java:60) org.jboss.errai.bus.server.HttpSessionProvider.createOrGetSession(HttpSessionProvider.java:42) org.jboss.errai.bus.server.servlet.DefaultBlockingServlet.doPost(DefaultBlockingServlet.java:135) javax.servlet.http.HttpServlet.service(HttpServlet.java:754) javax.servlet.http.HttpServlet.service(HttpServlet.java:847) org.jboss.weld.servlet.ConversationPropagationFilter.doFilter(ConversationPropagationFilter.java:62) </pre></p><p><b>nota</b> <u>La traza completa de la causa de este error se encuentra en los archivos de diario de JBoss Web/7.0.13.Final.</u></p><HR size="1" noshade="noshade"><h3>JBoss Web/7.0.13.Final</h3></body></html> 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      [errai] vote For: org.jboss.errai.bus.client.framework.RpcProxyLoader 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      [errai]   still waiting for -> [org.jboss.errai.bus.client.framework.ClientMessageBus] 9D159B89AFF7DD733FA134173CDBDB3F.cache.html:2142

      1. GET http://localhost:8080/dinaru-errai/in.89886-20925.erraiBus?z=1 500 (Error Interno del Servidor)

       

       

      Thanks !!!

        • 1. Re: ErraiBus problem with version 2.4.0.Beta1
          jfuerth

          Hi Christian,

           

          From the stack trace, it is clear that the call to request.getSession() in StandardAsyncServlet is returning an HttpSession object that has a null session ID. I'll look into this more. I admit there hasn't been much testing on StandardAsyncServlet on the 2.4 branch.

           

          -Jonathan

          • 2. Re: ErraiBus problem with version 2.4.0.Beta1
            jfuerth

            I can see from your stack trace that you're on JBoss AS 7.1.1. I've just played with the Errai Bus Stress Test demo on that server, and it's working well for me. This demo is set up to use StandardAsyncServlet by default when deployed to AS 7.

             

            Can you give me more details about your environment:

            • On which browser(s) do you observe this problem?
              • Is it possible your browser is rejecting the JSESSIONID cookie?
            • Does your client-side app code handle and/or delete cookies?
            • If you build and deploy the Bus Stress Test demo locally (mvn -Pjboss7 clean package; cp target/errai-bus-demo-stress-test.war $JBOSS_HOME/standalone/deployments) does it work properly on your system?

             

            -Jonathan

            1 of 1 people found this helpful
            • 3. Re: ErraiBus problem with version 2.4.0.Beta1
              crinaldi

              I will try the demo and I comment you as I was

              Thanks Jonathan