个人遇到的illegalStateException问题

来源:互联网 发布:网络数学老师 编辑:程序博客网 时间:2024/05/01 05:46

2012-12-11 23:19:33 org.apache.catalina.core.StandardWrapperValve invoke

严重: 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:852)
at org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:534)
at org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

这个关于ResponseFacade类sendError的问题,网上查了好久都没得到满意的答案,其中最多的答案说是在filter过滤器里,在sendRedirect("/error.jsp")后面加上return,这些都没有解决我的问题,钻研好久,终于无意中走进自己写的一个struts2拦截器中,在拦截器中,有request.getParameterMap(),得到这个map集合后,由key得到value(此value是一个String【】字符串数组,当所得的key不存在时,value也就不存在,不能想当然的调用value[0]来得到自己想得到的值,这样程序在启动后都没问题,当运行到与这个相关的代码时抛出illegalStateException!(个人的大意遇到一个问题,但是解决问题的答案苦寻半天没找到,自己最后还是解决了问题,仅以此提醒自己今后不要犯这样的错误!)

原创粉丝点击