java.lang.IllegalStateException: A filter or servlet of the current chain does not support asynchron

The error details are as follows:

java.lang.IllegalStateException: A filter or servlet of the current chain does not support asynchronous operations.
	at org.apache.catalina.connector.Request.startAsync(Request.java:1667)
	at org.apache.catalina.connector.RequestFacade.startAsync(RequestFacade.java:1029)
	at com.ty.asyncServlet.AsyncServlet.doGet(AsyncServlet.java:24)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:624)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:731)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:169)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:956)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:436)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1078)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:625)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Thread.java:748)


This error occurs because the asynchronous servlet is not added: asyncSupported


There are two ways to add this property:

1. Add to the annotation: @WebServlet(urlPatterns = "/asyncServlet", asyncSupported = true)

3. Configure the servlet in web.xml:

<servlet>   
   <servlet-name>AsyncServlet</servlet-name>   
   <servlet-class>com.pkgname.AsyncServlet</servlet-class>   
   <async-supported>true</async-supported>   
</servlet>   

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=324641225&siteId=291194637