Errai now has adapters to support non-blocking event-based HTTP for both Tomcat and JBoss, using their respective AIO APIs.  Right now, however, they are not supported as part of the standard configuration.  To use them you must comment out the Guice filter stuff from the web.xml and map the Tomcat or JBoss servlets in directly.

I'm going to be working on creating a new Servlet facade that can detect and configure Errai for the container automatically so we can have just one standard web.xml declaration for all appservers.  But for now, these provides high-performance non-blocking IO for Errai.  

Tomcat (Requests NIO or APR connector):

    <servlet>
        <servlet-name>TomcatErraiServlet</servlet-name>
        <servlet-class>org.jboss.errai.bus.server.servlet.TomcatCometServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet

    <servlet-mapping>
        <servlet-name>TomcatErraiServlet</servlet-name>
        <url-pattern>*.erraiBus</url-pattern>
    </servlet-mapping>


JBoss AS 4 and 5 (Requires APR connector)

   <servlet>
        <servlet-name>JBossErraiServlet</servlet-name>
        <servlet-class>org.jboss.errai.bus.server.servlet.JBossCometServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>JBossErraiServlet</servlet-name>
        <url-pattern>*.erraiBus</url-pattern>
    </servlet-mapping>