[ https://issues.apache.org/jira/browse/DELTASPIKE-1226?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Gerald Turner updated DELTASPIKE-1226: -------------------------------------- Summary: NPE in DeltaSpikeLifecycleWrapper with OmniFaces 2.5 FullAjaxExceptionHandler (was: NPE in DeltaSpikeLifecycleWrapper when OmniFaces 2.5 FullAjaxExceptionHandler) > NPE in DeltaSpikeLifecycleWrapper with OmniFaces 2.5 FullAjaxExceptionHandler > ----------------------------------------------------------------------------- > > Key: DELTASPIKE-1226 > URL: https://issues.apache.org/jira/browse/DELTASPIKE-1226 > Project: DeltaSpike > Issue Type: Wish > Components: JSF-Module > Affects Versions: 1.7.2 > Environment: JBoss EAP 7.0.3.GA; DeltaSpike 1.7.2; OmniFaces 2.5.1; > PrimeFaces 6.0.7 > Reporter: Gerald Turner > Priority: Minor > > I have a JSF application with web.xml declaring an error page, and I am using > [OmniFaces > FullAjaxExceptionHandler|http://showcase.omnifaces.org/exceptionhandlers/FullAjaxExceptionHandler] > to render failed AJAX requests with the error page. > Since upgrading to OmniFaces 2.5.1 the application has been having > NullPointerExceptions in DeltaSpikeLifecycleWrapper when > FullAjaxExceptionHandler performs it's error page rendering. Triggering the > so-called "Error in error page itself" condition. > I believe [OmniFaces commit > 59459007|https://github.com/omnifaces/omnifaces/commit/5945900731da60f609d7dd36f0fe28ce3f26edbf] > is the culprit. > I've breakpointed at the NullPointerException thrown in > DeltaSpikeLifecycleWrapper#render and found that none of the fields like > _contextExtension_ have been initialized. > Downgrading to OmniFaces 2.4 works around the issue. > Stacktrace: > {noformat} > 2016-12-07 14:26:25,581 SEVERE > [org.omnifaces.exceptionhandler.FullAjaxExceptionHandler] (default task-100) > FullAjaxExceptionHandler: Well, another exception occurred during rendering > error page '/csst/error.jsf'. Trying to render a hardcoded error page now.: > java.lang.NullPointerException > at > org.apache.deltaspike.jsf.impl.listener.request.DeltaSpikeLifecycleWrapper.render(DeltaSpikeLifecycleWrapper.java:115) > [deltaspike-jsf-module-impl-1.7.2.jar:1.7.2] > at > javax.faces.lifecycle.LifecycleWrapper.render(LifecycleWrapper.java:92) > [jboss-jsf-api_2.2_spec-2.2.12.redhat-1.jar:2.2.12.redhat-1] > at > org.apache.deltaspike.jsf.impl.listener.request.JsfClientWindowAwareLifecycleWrapper.render(JsfClientWindowAwareLifecycleWrapper.java:160) > [deltaspike-jsf-module-impl-1.7.2.jar:1.7.2] > at > org.omnifaces.exceptionhandler.FullAjaxExceptionHandler.renderErrorPageView(FullAjaxExceptionHandler.java:536) > [omnifaces-2.5.1.jar:2.5.1] > at > org.omnifaces.exceptionhandler.FullAjaxExceptionHandler.handleAjaxException(FullAjaxExceptionHandler.java:411) > [omnifaces-2.5.1.jar:2.5.1] > at > org.omnifaces.exceptionhandler.FullAjaxExceptionHandler.handle(FullAjaxExceptionHandler.java:364) > [omnifaces-2.5.1.jar:2.5.1] > at > javax.faces.context.ExceptionHandlerWrapper.handle(ExceptionHandlerWrapper.java:100) > [jboss-jsf-api_2.2_spec-2.2.12.redhat-1.jar:2.2.12.redhat-1] > at > org.apache.deltaspike.jsf.impl.exception.control.BridgeExceptionHandlerWrapper.handle(BridgeExceptionHandlerWrapper.java:109) > [deltaspike-jsf-module-impl-1.7.2.jar:1.7.2] > at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:119) > [jsf-impl-2.2.12.redhat-1.jar:2.2.12.redhat-1] > at > com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:198) > [jsf-impl-2.2.12.redhat-1.jar:2.2.12.redhat-1] > at > org.apache.deltaspike.jsf.impl.listener.request.DeltaSpikeLifecycleWrapper.execute(DeltaSpikeLifecycleWrapper.java:89) > [deltaspike-jsf-module-impl-1.7.2.jar:1.7.2] > at > javax.faces.lifecycle.LifecycleWrapper.execute(LifecycleWrapper.java:77) > [jboss-jsf-api_2.2_spec-2.2.12.redhat-1.jar:2.2.12.redhat-1] > at javax.faces.webapp.FacesServlet.service(FacesServlet.java:658) > [jboss-jsf-api_2.2_spec-2.2.12.redhat-1.jar:2.2.12.redhat-1] > at > io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:85) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > net.xoint.csst.common.util.SlowRequestFilter.doFilter(SlowRequestFilter.java:113) > [CSST-war-common-2.12-SNAPSHOT.jar:2.12-SNAPSHOT (local)] > at > io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > org.ocpsoft.rewrite.servlet.RewriteFilter.doFilter(RewriteFilter.java:205) > [rewrite-servlet-2.0.12.Final.jar:2.0.12.Final] > at > io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) > [undertow-core-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) > [undertow-core-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) > [undertow-core-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:266) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.servlet.handlers.ServletInitialHandler.dispatchToPath(ServletInitialHandler.java:201) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.servlet.spec.RequestDispatcherImpl.forwardImpl(RequestDispatcherImpl.java:202) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.servlet.spec.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:109) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > org.ocpsoft.rewrite.servlet.impl.HttpRewriteResultHandler.handleResult(HttpRewriteResultHandler.java:41) > [rewrite-servlet-2.0.12.Final.jar:2.0.12.Final] > at > org.ocpsoft.rewrite.servlet.RewriteFilter.rewrite(RewriteFilter.java:268) > [rewrite-servlet-2.0.12.Final.jar:2.0.12.Final] > at > org.ocpsoft.rewrite.servlet.RewriteFilter.doFilter(RewriteFilter.java:188) > [rewrite-servlet-2.0.12.Final.jar:2.0.12.Final] > at > io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > org.wildfly.extension.undertow.security.SecurityContextAssociationHandler.handleRequest(SecurityContextAssociationHandler.java:78) > at > io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) > [undertow-core-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:131) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.server.handlers.DisableCacheHandler.handleRequest(DisableCacheHandler.java:33) > [undertow-core-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) > [undertow-core-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.security.handlers.AuthenticationConstraintHandler.handleRequest(AuthenticationConstraintHandler.java:51) > [undertow-core-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46) > [undertow-core-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.servlet.handlers.security.ServletSecurityConstraintHandler.handleRequest(ServletSecurityConstraintHandler.java:59) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60) > [undertow-core-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.security.handlers.NotificationReceiverHandler.handleRequest(NotificationReceiverHandler.java:50) > [undertow-core-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43) > [undertow-core-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) > [undertow-core-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61) > at > io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) > [undertow-core-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43) > [undertow-core-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:285) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:264) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:81) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:175) > [undertow-servlet-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.server.Connectors.executeRootHandler(Connectors.java:207) > [undertow-core-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:802) > [undertow-core-1.3.25.Final-redhat-1.jar:1.3.25.Final-redhat-1] > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) > [rt.jar:1.8.0_111] > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) > [rt.jar:1.8.0_111] > at java.lang.Thread.run(Thread.java:745) [rt.jar:1.8.0_111] > {noformat} -- This message was sent by Atlassian JIRA (v6.3.4#6332)