java技術研究

          統計

          留言簿(3)

          閱讀排行榜

          評論排行榜

          filter與redirect引起的 IllegalStateException問題

          在response.sendRedirect()方法后加return語句即可,如下:
          response.sendRedirect("index.jsp");
          return;

          原因是:在程序中兩次調用了response.sendRedirect()方法。

          jdk5.0文檔中很清楚地介紹了出現IllegalStateException異常的可能情況:

          1)同一個頁面中再次調用response.sendRedirect()方法。
          2)提交的URL錯誤,即不是個有效的URL。

          filter中多次chain.doFilter(request, response);也會這樣,要保證一個filter只進行一次doFilter

          java.lang.IllegalStateException
          at org.apache.catalina.connector.ResponseFacade.sendError(ResponseFacade.java:405)
          at org.apache.catalina.servlets.DefaultServlet.serveResource(DefaultServlet.java:779)
          at org.apache.catalina.servlets.DefaultServlet.doGet(DefaultServlet.java:385)
          at javax.servlet.http.HttpServlet.service(HttpServlet.java:627)
          at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
          at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
          at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
          at com.ebizer.framework.star.filter.CoreUrlRewriteFilter.doFilterInternal(CoreUrlRewriteFilter.java:120)
          at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
          at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
          at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
          at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
          at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
          at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
          at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
          at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:581)
          at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
          at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
          at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:843)
          at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:679)
          at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1293)
          at java.lang.Thread.run(Thread.java:595)

          posted on 2012-04-11 12:00 小秦 閱讀(1767) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 拉萨市| 隆昌县| 曲靖市| 天津市| 昔阳县| 贵港市| 湟中县| 泾源县| 霍林郭勒市| 长葛市| 元江| 日照市| 云南省| 博乐市| 萝北县| 天津市| 读书| 乌审旗| 东乌珠穆沁旗| 台东县| 六盘水市| 永胜县| 汤阴县| 台安县| 甘谷县| 越西县| 上高县| 哈密市| 宜阳县| 包头市| 蒲江县| 德安县| 屏东市| 信丰县| 霍城县| 福清市| 桓台县| 南江县| 安西县| 疏附县| 南陵县|