`
hpjianhua
  • 浏览: 235502 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类

Struts2图片上传成功后,异常:java.lang.IllegalStateException

阅读更多
1.场景:
   使用Struts2图片上传成功后出现异常:
 
严重: Servlet.service() for servlet default threw exception
java.lang.IllegalStateException
	at org.apache.catalina.connector.ResponseFacade.sendError(ResponseFacade.java:407)
	at javax.servlet.http.HttpServletResponseWrapper.sendError(HttpServletResponseWrapper.java:108)
	at org.apache.struts2.dispatcher.Dispatcher.sendError(Dispatcher.java:771)
	at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:506)
	at org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:395)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:176)
	at org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:145)
	at org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:92)
	at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:381)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
	at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:859)
	at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579)
	at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1555)
	at java.lang.Thread.run(Thread.java:619)
2011-7-10 18:39:55 org.apache.catalina.startup.HostConfig checkResources
  


2.解决方案:
  经过详细查找问题之后,发现问题出现在使用Struts2静态化HTML的问题上面,在Web.xml中配置如下:
 
 	<filter-mapping>
		<filter-name>struts2</filter-name>
		<url-pattern>/*</url-pattern>
		<dispatcher>REQUEST</dispatcher>
		<dispatcher>FORWARD</dispatcher>
	</filter-mapping>


在上面的配置中,Struts2再使用了FORWARD转发,结果就出现了异常:
java.lang.IllegalStateException
这个异常是指在不合法的状态下使用了要在合法状态下访问的方法或者是变量.

  关键的一点:在web.xml中添加新的struts2的配置可成功解决异常的问题:
 
	 <filter>
	  <filter-name>struts-cleanup</filter-name>
	  <filter-class>org.apache.struts2.dispatcher.ActionContextCleanUp</filter-class>
	 </filter> 
  <filter-mapping>
  
  <filter-name>struts-cleanup</filter-name>
  <url-pattern>/*</url-pattern>
 </filter-mapping>
  
2
0
分享到:
评论
3 楼 god8816 2012-05-17  
<filter> 
<filter-name>struts-cleanup</filter-name> 
<filter-class>org.apache.struts2.dispatcher.ActionContextCleanUp</filter-class> 
</filter>  
<filter-mapping> 
 
<filter-name>struts-cleanup</filter-name> 
<url-pattern>/*</url-pattern> 
lt;/filter-mapping>

怎么没有效果啊??
2 楼 hpjianhua 2011-08-25  
tfling2012 写道
楼主,还是未解决我的问题
我想请教一下,每次我下载jar包完成是都会报错
严重: Servlet.service() for servlet default threw exception
java.lang.IllegalStateException
at org.apache.catalina.connector.ResponseFacade.sendError(ResponseFacade.java:407)
at org.apache.struts2.dispatcher.Dispatcher.sendError(Dispatcher.java:770)
at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:505)


每次我下载jar包完成是都会报错?你是上传Jar包自己下载?还是什么呢?
看这个异常的信息是不合法的状态错误,检查下代码,看是那里抛出来的
1 楼 tfling2012 2011-07-22  
楼主,还是未解决我的问题
我想请教一下,每次我下载jar包完成是都会报错
严重: Servlet.service() for servlet default threw exception
java.lang.IllegalStateException
at org.apache.catalina.connector.ResponseFacade.sendError(ResponseFacade.java:407)
at org.apache.struts2.dispatcher.Dispatcher.sendError(Dispatcher.java:770)
at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:505)

相关推荐

Global site tag (gtag.js) - Google Analytics