If your error page contains JSF then the location should use the .jsf extension (or whatever url mapping the FacesServlet is configured to use):

<error-page>
   <error-code>404</error-code>
   <location>/resources/pages/fileNotFound.jsf</location>
</error-page>

etc.

-Guy.

On 23/08/2006 10:37, Wolf Benz wrote:
Hi, Browsing through earlier posts, it appears that if you specify an error-page in the web.xml <http://web.xml> AND IF this page contains jsf tags (pure jsp & html goes aparently fine), MyFaces throws an Exception. I've experienced this myself too. Is there a remedy/fix planned?
The code:

In my web.xml <http://web.xml> I have:

/<!-- For Error Handling: for both general java exceptions and the Page Not Found case: -->/
/<error-page> /
/<error-code>404</error-code> /
/<location>/resources/pages/fileNotFound.jsp</location> /
/</error-page> /
/<error-page> /
/<exception-type>java.lang.Exception</exception-type> /
/<location>/resources/pages/generalJavaErrorPage.jsp</location> /
/</error-page>/


E.g. the fileNotFound page features:

/<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>/
/<jsp:root / /xmlns:jsp="http://java.sun.com/JSP/Page"; version="2.0"/
/xmlns="http://www.w3.org/1999/xhtml"; /
/xmlns:f="http://java.sun.com/jsf/core"; /
/    / /xmlns:h="http://java.sun.com/jsf/html"/
/    / /xmlns:t="http://myfaces.apache.org/tomahawk"; >/
/
/
/<jsp:directive.page contentType="text/html;charset=utf-8"/>/
/<html>/
/<head>/
/<link href="../css/befimmo.css" rel="stylesheet" type="text/css"/>/
/</head>/
/
/
/<body topmargin="0" leftmargin="0" rightmargin="0" marginheight="0" marginwidth="0" class="body">/
/
/
/<f:view>/
/<f:loadBundle basename="x.y.z" var="labels" />/
/<f:subview id="header">/
/<jsp:include page="./header.jsp" />/
/</f:subview>/
/
/
/   / /<h:form id="pageNotFoundForm">/
/   /
/   / /<table align="center" >/
/   / /<tr>  /
/   / /<td style="vertical-align:middle;" colspan="2">/
/<h3><h:outputLabel value="#{labels.error_Title}" /></h3>/
/</td>/
/   / /</tr>/
/   / /<tr>/
/   / /<td align="center" colspan="5" >/
/   / /<h:outputLabel value="#{labels.error_BadURLTit}" /> /
/   / /</td>/
/   / /</tr>/
/   / /<tr>/
/ / /<td align="center" width="90%" colspan="3" valign="middle" style="error">/
/   / /<h:outputLabel value="#{labels.error_BadURL1} "/> /
/<jsp:expression>request.getRequestURL()</jsp:expression>,/
/ / /<h:outputLabel value=" #{labels.error_BadURL2}"/>/
/   / /</td>/
/   / /</tr>/
/      / /</table>/
/   / /</h:form>/
/<f:subview id="footer">/
/<jsp:include page="./footer.jsp" />/
/</f:subview>/
/</f:view>/
/</body>/
/</html>/
/</jsp:root>/
_______________

The error I'm getting is: /2006-08-23 11:28:05,661 ERROR [javax.faces.webapp.UIComponentTag] - Faces context not found. getResponseWriter will fail. Check if the FacesServlet has been initialized at all in your web.xml <http://web.xml>./ /2006-08-23 11:28:05,697 ERROR [org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/Mnemonica].[jsp]] - Servlet.service() for servlet jsp threw exception/
/java.lang.NullPointerException/
/at javax.faces.webapp.UIComponentTag.setupResponseWriter(UIComponentTag.java:929)/
/at javax.faces.webapp.UIComponentTag.doStartTag(UIComponentTag.java:310)/
/at org.apache.myfaces.taglib.core.ViewTag.doStartTag(ViewTag.java:70)/
/at org.apache.jsp.resources.pages.fileNotFound_jsp._jspService(fileNotFound_jsp.java:80)/
/at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)/
/at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)/
/at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)/ /at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)/
/at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)/
/at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)/
/at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)/ /at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)/ /at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)/ /at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:465)/ /at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398)/ /at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)/ /at org.apache.catalina.core.StandardHostValve.custom(StandardHostValve.java:363)/ /at org.apache.catalina.core.StandardHostValve.status(StandardHostValve.java:284)/ /at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:136)/ /at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)/ /at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)/ /at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)/ /at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)/ /at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)/ /at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)/ /at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)/ /at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)/
/at java.lang.Thread.run(Thread.java:613)/
/Aug 23, 2006 11:28:05 AM org.apache.catalina.core.StandardHostValve custom/
/SEVERE: Exception Processing ErrorPage[errorCode=404, location=/resources/pages/fileNotFound.jsp]/ /org.apache.jasper.JasperException: Exception in JSP: /resources/pages/fileNotFound.jsp:18/
/
/
/15: /
/16: / /<body topmargin="0" leftmargin="0" rightmargin="0" marginheight="0" marginwidth="0" class="body">/
/17: /
/18: / /<f:view>/
/19: /
/20: / /<f:loadBundle basename="be.mnemonica.web.conf.mnemonica <http://web.conf.mnemonica>" var="labels" />/
/21: / /<f:subview id="header">/
/
/
/
/
/Stacktrace:/
/at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:504)/ /at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:393)/ /at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)/
/at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)/
/at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)/
/at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)/ /at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)/ /at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)/ /at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:465)/ /at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:398)/ /at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:301)/ /at org.apache.catalina.core.StandardHostValve.custom(StandardHostValve.java:363)/ /at org.apache.catalina.core.StandardHostValve.status(StandardHostValve.java:284)/ /at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:136)/ /at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)/ /at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)/ /at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)/ /at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)/ /at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)/ /at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)/ /at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)/ /at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)/
/at java.lang.Thread.run(Thread.java:613)/

Reply via email to