Asynchronous processing in JBoss 6 ("Comet")

edit: Retagged as tomcat/ jboss, since it might be a question about the built-in Tomcat inside JBoss 6, not JBoss itself

I have a very simple servlet that runs on Glassfish v3. It uses asynchronous servlet 3.0 processing. Here's a simplified version (which does little):

@WebServlet(asyncSupported=true)
public class SimpleServlet extends HttpServlet {

    @Override
    protected void doGet(HttpServletRequest request,
            HttpServletResponse response)
            throws ServletException, IOException {

        final AsyncContext ac = request.startAsync();
        ac.setTimeout(3000);
    }
}

In JBoss 6.0.0 Milestone 2, I get the following exception:

java.lang.IllegalStateException: The servlet or filters that are being used
          by this request do not support async operation
    at org.apache.catalina.connector.Request.startAsync(Request.java:3096)
    at org.apache.catalina.connector.Request.startAsync(Request.java:3090)
    at org.apache.catalina.connector.RequestFacade.startAsync(RequestFacade.java:990)
    at playcomet.SimpleServlet.doGet(SimpleServlet.java:18)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:734)
    ...

Do I need to do something to enable asynchronous processing in JBoss 6? Or do I need an additional deployment descriptor? ...

+3
source share
1 answer

web.xml, . .

test.war

  • WEB-INF/
  • WEB-INF//*.

  • WEB-INF/Library/*.


web.xml asyncSupported = true , ,

+2

Source: https://habr.com/ru/post/1741326/


All Articles