请求JSF页面时无限的setStatus()循环 [英] Infinite setStatus() loop when requesting a JSF page
问题描述
我已经将我的配置和库升级为休眠4 spring 3.1.1 richfaces 4.... 我正在运行tomcat 7. 但是,当我尝试打开索引页时,服务器会运行一个循环. 当我尝试在"ViewHandlerResponseWrapper"中设置断点时,日食卡住了,我无法对其进行调试以找到原因.并且"HttpServletResponseWrapper"的源似乎不可用.循环的异常看起来像这样:
Hi i've upgraded my configs and libs to hibernate 4 spring 3.1.1 richfaces 4 .... And i'm running on tomcat 7. But when i try to open my index-page the Server runs a loop. And when i try to set a breakpoint in "ViewHandlerResponseWrapper" eclipse stucks and i cant debug it to find a reason. And the source for "HttpServletResponseWrapper" seems not to be available. The exception of the loop looks like this:
Apr 05, 2012 9:21:56 AM org.apache.catalina.core.ApplicationDispatcher invoke
Schwerwiegend: Servlet.service() for servlet Faces Servlet threw exception
java.lang.StackOverflowError
at javax.servlet.http.HttpServletResponseWrapper.setStatus(HttpServletResponseWrapper.java:201)
at javax.servlet.http.HttpServletResponseWrapper.setStatus(HttpServletResponseWrapper.java:201)
at com.sun.faces.application.ViewHandlerResponseWrapper.setStatus(ViewHandlerResponseWrapper.java:88)
at javax.servlet.http.HttpServletResponseWrapper.setStatus(HttpServletResponseWrapper.java:201)
at javax.servlet.http.HttpServletResponseWrapper.setStatus(HttpServletResponseWrapper.java:201)
at com.sun.faces.application.ViewHandlerResponseWrapper.setStatus(ViewHandlerResponseWrapper.java:88)
at javax.servlet.http.HttpServletResponseWrapper.setStatus(HttpServletResponseWrapper.java:201)
at javax.servlet.http.HttpServletResponseWrapper.setStatus(HttpServletResponseWrapper.java:201)
at com.sun.faces.application.ViewHandlerResponseWrapper.setStatus(ViewHandlerResponseWrapper.java:88)
at javax.servlet.http.HttpServletResponseWrapper.setStatus(HttpServletResponseWrapper.java:201)
at javax.servlet.http.HttpServletResponseWrapper.setStatus(HttpServletResponseWrapper.java:201)
at com.sun.faces.application.ViewHandlerResponseWrapper.setStatus(ViewHandlerResponseWrapper.java:88)
at javax.servlet.http.HttpServletResponseWrapper.setStatus(HttpServletResponseWrapper.java:201)
at javax.servlet.http.HttpServletResponseWrapper.setStatus(HttpServletResponseWrapper.java:201)
at com.sun.faces.application.ViewHandlerResponseWrapper.setStatus(ViewHandlerResponseWrapper.java:88)
at javax.servlet.http.HttpServletResponseWrapper.setStatus(HttpServletResponseWrapper.java:201)
at javax.servlet.http.HttpServletResponseWrapper.setStatus(HttpServletResponseWrapper.java:201)
... and so on
希望有人可以帮助我.谢谢
hope somebody can help me out. Thanks
推荐答案
ok由我自己找到: 我必须从以下位置升级我的faces-config.xml的标题:
ok found it by myselfe: i had to upgrade the header of my faces-config.xml from:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
"http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
<faces-config>
到
<?xml version="1.0" encoding="UTF-8"?>
<faces-config 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-facesconfig_2_0.xsd"
version="2.0">
这篇关于请求JSF页面时无限的setStatus()循环的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!