java - 如何避免请求集 ASYNC_SUPPORTED=true 以在 Tomcat 7 上启用异步 servlet 3.0 处理?

标签 java asynchronous request tomcat7 servlet-3.0

在此 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/

相关文章:

c# - CancellationToken 的默认参数

MySQL 查询没有返回正确的结果

php - Laravel 5.2 Codeception 功能测试问题与 PUT/PATCH 请求

javascript - Vuex:Axios GET 请求在组件内部返回未定义

java - Icefaces 的默认外观以及如何自定义它

java - 使用同一个 eclipse.ini 文件安装多个 eclipse 最简单的方法是什么?

java - java中如何将变量设置为全局变量

postgresql - 如何在 redstone_mapper_pg 中插入多行的正确方法?

http - 当服务不可用时,如何在 JMeter 中测试 http 请求

java - R.java 中的奇怪错误,即使在清理项目 : "Underscores can only be used with source level 1.7 or greater" 之后