[ 
https://issues.apache.org/jira/browse/MYFACES-3638?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13496485#comment-13496485
 ] 

Mark Struberg commented on MYFACES-3638:
----------------------------------------

That sounds perfectly reasonable.
Is there some edge case where the FaceletViewDeclarationLanguage could have the 
same problem?
And what about error pages afterwards? If we set responseComplete() does this 
have some effect on the error handling on our side?
Will need to think through the different use cases.

In any case the caching algorithm needs improvement and can be done much 
simpler without affecting the performance. The current impl potentially creates 
key clashes and must get fixed anyway. I'm working on that already.
                
> NPE in ServerSideStateCacheImpl
> -------------------------------
>
>                 Key: MYFACES-3638
>                 URL: https://issues.apache.org/jira/browse/MYFACES-3638
>             Project: MyFaces Core
>          Issue Type: Bug
>    Affects Versions: 2.1.9
>            Reporter: Mark Struberg
>            Assignee: Mark Struberg
>         Attachments: MYFACES-3638.patch
>
>
> I'm getting the following NPE when having a request which leads to a 404:
> {code}
> Nov  9 09:00:45 j02 java.lang.NullPointerException
> Nov  9 09:00:45 j02      at 
> org.apache.myfaces.renderkit.ServerSideStateCacheImpl$CounterSessionViewStorageFactory.createSerializedViewKey(ServerSideStateCacheImpl.java:1413)
> Nov  9 09:00:45 j02      at 
> org.apache.myfaces.renderkit.ServerSideStateCacheImpl$CounterSessionViewStorageFactory.createSerializedViewKey(ServerSideStateCacheImpl.java:1392)
> Nov  9 09:00:45 j02      at 
> org.apache.myfaces.renderkit.ServerSideStateCacheImpl.saveSerializedViewInServletSession(ServerSideStateCacheImpl.java:318)
> Nov  9 09:00:45 j02      at 
> org.apache.myfaces.renderkit.ServerSideStateCacheImpl.saveSerializedView(ServerSideStateCacheImpl.java:1036)
> Nov  9 09:00:45 j02      at 
> org.apache.myfaces.renderkit.html.HtmlResponseStateManager.saveState(HtmlResponseStateManager.java:149)
> Nov  9 09:00:45 j02      at 
> org.apache.myfaces.application.StateManagerImpl.saveView(StateManagerImpl.java:253)
> Nov  9 09:00:45 j02      at 
> org.apache.myfaces.shared.view.JspViewDeclarationLanguageBase.renderView(JspViewDeclarationLanguageBase.java:221)
> Nov  9 09:00:45 j02      at 
> org.apache.myfaces.application.ViewHandlerImpl.renderView(ViewHandlerImpl.java:285)
> Nov  9 09:00:45 j02      at 
> javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:59)
> Nov  9 09:00:45 j02      at 
> javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:59)
> Nov  9 09:00:45 j02      at 
> javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:59)
> Nov  9 09:00:45 j02      at 
> org.apache.myfaces.tomahawk.application.ResourceViewHandlerWrapper.renderView(ResourceViewHandlerWrapper.java:93)
> Nov  9 09:00:45 j02      at 
> javax.faces.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:59)
> Nov  9 09:00:45 j02      at 
> org.apache.myfaces.lifecycle.RenderResponseExecutor.execute(RenderResponseExecutor.java:116)
> Nov  9 09:00:45 j02      at 
> org.apache.myfaces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:241)
> Nov  9 09:00:45 j02      at 
> org.apache.myfaces.extensions.cdi.jsf2.impl.listener.phase.CodiLifecycleWrapper.render(CodiLifecycleWrapper.java:126)
> Nov  9 09:00:45 j02      at 
> javax.faces.webapp.FacesServlet.service(FacesServlet.java:199)
> {code}

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to