我创建了一个 servlet 3.0 来探索异步请求处理:
@WebServlet(name="MyTest", urlPatterns={"/MyTest"}, asyncSupported=true)
public class MyTest extends HttpServlet {
@Override
public void doGet(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
AsyncContext tmp = req.startAsync(req, res);
...
}
}
但我得到了一个IllegalStateException
何时.startAsync(...)
被调用。我知道 Javadoc 提到了该异常,但我确实明确启用了异步(cfWebServlet
注释)。我正在使用随 NetBeans 提供的 Tomcat 7.0.11.0。
我可以确认req.isAsyncSupported()
返回错误。我究竟做错了什么?我还需要做什么才能启用异步处理?
编辑:
我尝试实现以下示例并遇到相同的问题。