[
http://jira.jboss.com/jira/browse/JBSEAM-959?page=comments#action_12357344 ]
Andrew commented on JBSEAM-959:
-------------------------------
Please re-open this bug, it is not fixed.
Steps to reproduce:
Attempt a redirect from inside of the RESTORE_VIEW phase.
What happens:
Seam does not initialize the conversation stack until the end of the RESTORE_VIEW phase.
Until then, any redirect will fail with an exception because Seam calls
createConversationEntry() without first creating the stack.
This is easily reproducible with Ajax4Jsf 1.1.0. Try this:
1) Create a page with a RichFaces tree (any A4J enabled component that generates AJAX
events will work).
2) View the page and wait for the session/view to time out
3) Expand a node (generating an AJAX event)
What happens:
1) A4J's view handler sees that no UIViewRoot exists due to session expiration
2) The view handler then sends a redirect to the user to the requested view ID
3) Seam's redirect filter picks up the redirect request and attempts to append the
conversation ID onto the URL
4) This fails because the conversation stack is not created until after RESTORE_VIEW
I'm also approaching this bug from the A4J side:
http://jboss.com/index.html?module=bb&op=viewtopic&p=4031688#4031688
Thank you!
NullPointerException in ConversationEntry if stack is null
----------------------------------------------------------
Key: JBSEAM-959
URL:
http://jira.jboss.com/jira/browse/JBSEAM-959
Project: JBoss Seam
Issue Type: Bug
Components: Core
Affects Versions: 1.2.0.GA
Reporter: Keith Naas
Assigned To: Pete Muir
Fix For: 1.2.1.GA
When the conversation stack is null, the ConversationEntry constructor throws a
NullPointerException.
There is a conditional check earlier in the constructor that causes the
conversationIdStack to be set to null. Then later it checks to see if the stack size is
greater than 1. Kablooey!
changed to
if ( conversationIdStack != null && conversationIdStack.size()>1 )
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira