在此 question 上报告了一个问题之后,找到解决方案:
req.setAttribute("org.apache.catalina.ASYNC_SUPPORTED", true);
这看起来有点奇怪并且不是真正的“可移植”代码(它不会造成伤害,但是......)。它似乎特定于 Tomcat 7。我使用的是 NetBeans 7.0.1 提供的 Tomcat 7.0.14。
我找不到表明有必要在 servlet 3.0 中使用 catalina 属性启用异步请求处理的文档。我找不到表明在 Tomcat 配置级别也需要一些特殊内容的文档。
有没有办法避免必须在每个请求中设置 ASYNC_SUPPORTED=true
以在 Tomcat 7 中启用异步 servlet 3.0 处理?
最佳答案
首先要检查几件事:
确保对请求进行操作的任何过滤器也支持异步(如 one of the answers 中对您引用的问题所述)。
确保您使用的是 Servlet 3.0 web.xml - 例如:
<web-app 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"
version="3.0"
metadata-complete="true">
关于java - 如何避免请求集 ASYNC_SUPPORTED=true 以在 Tomcat 7 上启用异步 servlet 3.0 处理?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7855712/