java servlet not supported_(转)使用Servlet3.0新特性asyncSupported=true时抛异常java.lang.IllegalStateException:...

http://www.tuicool.com/articles/zYfmme

最近在运用Servlet3.0新特性:异步处理功能的时候出现以下了2个问题:

运行时会抛出以下两种异常:

一月 19, 2014 3:07:07 下午 org.apache.catalina.core.StandardWrapperValve invoke

严重: Servlet.service() for servlet [servletTest.AsyncServlet] in context with path [/idea] threw exception

java.lang.IllegalStateException: Not supported.

一月 19, 2014 2:42:01 下午 org.apache.catalina.core.ApplicationContext log

经过反复排查,终于查出了问题原因,不多说,直接上结论:

1.使用asyncSupported=true必须运用tomcat7+JDK6以上版本。

2.必须在一个请求涉及的所有Servlet及Filter中都声明asyncSupported=true。

简单地说:

我写了一个AsyncServlet.java(extends HttpServlet)中声明了asyncSupported=true,

但是该请求还同时会触发另外3个Filter,所以这3个Filter中也 必须声明asyncSupported=true ,

这就是这个使用asyncSupported这个属性的关键。

============================================================

http://www.cnblogs.com/yangzhilong/p/3725128.html

在spring mvc3.2及以上版本增加了对请求的异步处理,是在servlet3的基础上进行封装的。

1、修改web.xml

48304ba5e6f9fe08f3fa1abda7d326ab.png

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">

...

48304ba5e6f9fe08f3fa1abda7d326ab.png

1.1、声明version="3.0",声明web-app_3_0.xsd

1.2、为servlet或者filter设置启用异步支持:true,修改WEB应用的web.xml

48304ba5e6f9fe08f3fa1abda7d326ab.png

SpringMvc

org.springframework.web.servlet.DispatcherServlet

contextConfigLocation

...

1

true

48304ba5e6f9fe08f3fa1abda7d326ab.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值