In JSF2, Seam sets JSF view Id to null for postback requests
------------------------------------------------------------
Key: JBSEAM-4639
URL:
https://jira.jboss.org/jira/browse/JBSEAM-4639
Project: Seam
Issue Type: Bug
Components: JSF Integration
Affects Versions: 2.2.0.GA
Environment: JSF 2 RI (Mojarra) v.2.0.2.FCS
Reporter: Alex Savitsky
Priority: Critical
Run attached test-bug-2.2.1.war (I've been using Tomcat 6.0, but any web container
will do). Access index.jsf in the context root (usually
http://localhost:your-startup-port/your-context-root/index.jsf) and click the
"Add" button. Note the exception, and also note the debug output in the system
console:
Before phase RESTORE_VIEW 1, view id = N/A (no root)
After phase RESTORE_VIEW 1, view id = /index.xhtml
Before phase RENDER_RESPONSE 6, view id = /index.xhtml
TestBean created
After phase RENDER_RESPONSE 6, view id = /index.xhtml
Before phase RESTORE_VIEW 1, view id = N/A (no root)
After phase RESTORE_VIEW 1, view id = null
Before phase APPLY_REQUEST_VALUES 2, view id = null
After phase APPLY_REQUEST_VALUES 2, view id = null
Before phase PROCESS_VALIDATIONS 3, view id = null
After phase PROCESS_VALIDATIONS 3, view id = null
Before phase UPDATE_MODEL_VALUES 4, view id = null
After phase UPDATE_MODEL_VALUES 4, view id = null
Before phase INVOKE_APPLICATION 5, view id = null
After phase INVOKE_APPLICATION 5, view id = null
The very same setup without Seam (test-bug-clean.war, with no Seam JAR in WEB-INF/lib, and
with Seam commented out in web.xml) has the button working (validation messages appear) as
well as different debug output:
Before phase RESTORE_VIEW 1, view id = N/A (no root)
After phase RESTORE_VIEW 1, view id = /index.xhtml
Before phase RENDER_RESPONSE 6, view id = /index.xhtml
TestBean created
After phase RENDER_RESPONSE 6, view id = /index.xhtml
Before phase RESTORE_VIEW 1, view id = N/A (no root)
After phase RESTORE_VIEW 1, view id = /index.xhtml
Before phase APPLY_REQUEST_VALUES 2, view id = /index.xhtml
After phase APPLY_REQUEST_VALUES 2, view id = /index.xhtml
Before phase PROCESS_VALIDATIONS 3, view id = /index.xhtml
After phase PROCESS_VALIDATIONS 3, view id = /index.xhtml
Before phase RENDER_RESPONSE 6, view id = /index.xhtml
After phase RENDER_RESPONSE 6, view id = /index.xhtml
The debug phase listener source can be found in /WEB-INF/classes/test/TestListener.java
--
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