[
https://jira.jboss.org/jira/browse/JBSEAM-4130?page=com.atlassian.jira.pl...
]
Norman Richards commented on JBSEAM-4130:
-----------------------------------------
This looks like it has to do with page parameters, not @RequestParameter. I don't
see what you are doing to make this happen, and my test case works as expected. Can you
post more information?
NullPointerException is thrown after redirect from exception handler
for ViewExpiredException to any view with a component with @In or @RequestParameter
--------------------------------------------------------------------------------------------------------------------------------------------------------
Key: JBSEAM-4130
URL:
https://jira.jboss.org/jira/browse/JBSEAM-4130
Project: Seam
Issue Type: Bug
Components: Exception Handling
Affects Versions: 2.1.1.GA
Environment: Seam 2.1.1.GA, Jboss As 4.2.3, Java 1.6
Reporter: Bostjan Lah
Assignee: Norman Richards
Fix For: 2.1.2.CR2
I have the following in my pages.xml:
<exception class="javax.faces.application.ViewExpiredException">
<end-conversation/>
<redirect view-id="/content.xhtml">
<message>Your session has expired.</message>
</redirect>
</exception>
However content.xhtml uses a component ContentHome which has several @RequestParameter
annotations.
Here is stacktrace:
java.lang.NullPointerException
at org.jboss.seam.navigation.Pages.getStringValuesFromModel(Pages.java:758)
at org.jboss.seam.navigation.Pages.encodePageParameters(Pages.java:937)
at org.jboss.seam.faces.FacesManager.redirect(FacesManager.java:176)
at org.jboss.seam.faces.Navigator.redirect(Navigator.java:55)
at org.jboss.seam.faces.Navigator.redirect(Navigator.java:42)
at org.jboss.seam.exception.RedirectHandler.handle(RedirectHandler.java:51)
at org.jboss.seam.exception.Exceptions.handle(Exceptions.java:76)
at
org.jboss.seam.web.ExceptionFilter.endWebRequestAfterException(ExceptionFilter.java:114)
at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:70)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:73)
at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:178)
at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:390)
at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:517)
at org.jboss.seam.web.Ajax4jsfFilter.doFilter(Ajax4jsfFilter.java:56)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
at org.jboss.seam.web.LoggingFilter.doFilter(LoggingFilter.java:58)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at
org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:182)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at
org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:262)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:446)
at java.lang.Thread.run(Thread.java:619)
It seems this is caused by trying to retrieve page parameter from page context which
doesn't exist at that point.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira