https://issues.apache.org/bugzilla/show_bug.cgi?id=50789
Summary: custom error pages and CDI/weld problem Product: Tomcat 7 Version: 7.0.8 Platform: PC OS/Version: Windows XP Status: NEW Severity: normal Priority: P2 Component: Catalina AssignedTo: dev@tomcat.apache.org ReportedBy: gilles.harl...@gmail.com Created an attachment (id=26662) --> (https://issues.apache.org/bugzilla/attachment.cgi?id=26662) test case I can't seem to use CDI/weld in custom error pages. A testcase is attached. Build with "mvn install", deploy. "index.html" links to "404.jsf". If you visit this url, the page is displayed correctly. If you go somewhere else, thereby provoking a 404, it should display the same. Instead, I see tomcat's generic 404 page and this stacktrace: Feb 15, 2011 6:04:43 PM org.apache.catalina.core.ApplicationDispatcher invoke SEVERE: Servlet.service() for servlet Faces Servlet threw exception java.lang.IllegalStateException: Must call associate() before calling activate() at org.jboss.weld.context.AbstractConversationContext.activate(AbstractConversationContext.java:273) at org.jboss.weld.jsf.WeldPhaseListener.activateConversations(WeldPhaseListener.java:110) at org.jboss.weld.jsf.WeldPhaseListener.beforePhase(WeldPhaseListener.java:84) at com.sun.faces.lifecycle.Phase.handleBeforePhase(Phase.java:224) at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:95) at com.sun.faces.lifecycle.RestoreViewPhase.doPhase(RestoreViewPhase.java:107) at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:114) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:308) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:306) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 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:402) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:329) at org.apache.catalina.core.StandardHostValve.custom(StandardHostValve.java:466) at org.apache.catalina.core.StandardHostValve.status(StandardHostValve.java:387) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:181) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:541) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:383) at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:284) at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:322) at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:1684) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) Feb 15, 2011 6:04:43 PM org.apache.catalina.core.StandardHostValve custom SEVERE: Exception Processing ErrorPage[errorCode=404, location=/404.jsf] javax.servlet.ServletException: Must call associate() before calling activate() at javax.faces.webapp.FacesServlet.service(FacesServlet.java:321) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:306) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 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:402) at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:329) at org.apache.catalina.core.StandardHostValve.custom(StandardHostValve.java:466) at org.apache.catalina.core.StandardHostValve.status(StandardHostValve.java:387) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:181) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:541) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:383) at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:284) at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:322) at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:1684) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) at java.lang.Thread.run(Thread.java:662) Caused by: java.lang.IllegalStateException: Must call associate() before calling activate() at org.jboss.weld.context.AbstractConversationContext.activate(AbstractConversationContext.java:273) at org.jboss.weld.jsf.WeldPhaseListener.activateConversations(WeldPhaseListener.java:110) at org.jboss.weld.jsf.WeldPhaseListener.beforePhase(WeldPhaseListener.java:84) at com.sun.faces.lifecycle.Phase.handleBeforePhase(Phase.java:224) at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:95) at com.sun.faces.lifecycle.RestoreViewPhase.doPhase(RestoreViewPhase.java:107) at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:114) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:308) ... 19 more tomcat 7.0.8, java 1.6.0_23, windows XP SP3. This issue reminds me of https://issues.apache.org/bugzilla/show_bug.cgi?id=49991, that was on the issue of using CDI/weld in the login/login failed pages used when doing form authentication. -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug. --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org