Bug 867815 - Seam2.3 Conversation id not restored from page context
Seam2.3 Conversation id not restored from page context
Status: CLOSED CURRENTRELEASE
Product: JBoss Enterprise WFK Platform 2
Classification: JBoss
Component: Seam (Show other bugs)
2.1.0
Unspecified Unspecified
unspecified Severity high
: ER2
: 2.2.0
Assigned To: Marek Novotny
Marek Schmidt
Seam2.3
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2012-10-18 06:57 EDT by Marek Schmidt
Modified: 2013-05-14 10:50 EDT (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
JSF2 partial state-saving prevented Seam from properly initializing page context during restore view phase. As a consequence, the conversation ID was not restored during the restore view phase, which caused erroneous behaviour if a conversation-scoped component was accessed during the restore view phase. To fix this issue, Seam has been changed to propagate conversation ID through the query string part of the URL. As a result, proper conversation ID is now available during restore view phase and conversation-scoped components work properly even if accessed during restore view JSF phase.
Story Points: ---
Clone Of:
Environment:
Last Closed: 2013-05-14 10:50:14 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Marek Schmidt 2012-10-18 06:57:12 EDT
Description of problem:

Page context doesn't work properly with JSF2 partial state-saving. Conversation id is thus not being restored during restore view. Accessing conversation-scoped component during restore view phase breaks long-running conversation state, as new instances are being created instead of restoring the conversation state. 

Possible workarounds are:

1. Disable partial state saving
<context-param>
   <param-name>javax.faces.PARTIAL_STATE_SAVING</param-name>
   <param-value>false</param-value>
</context-param>

or, 2. Pass the conversation id explicitly, e.g.

<h:commandButton value="Guess" action="#{numberGuess.guess}">
  <s:conversationId/>
</h:commandButton>

or 

<input type='hidden' name='conversationId' value='#{conversation.id}'/>



Version-Release number of selected component (if applicable):

jboss-seam-2.3.0.Final-redhat-1

How reproducible:

Always

Steps to Reproduce:
1. Enable the org.jboss.seam.test.integration.faces.RestoreViewComponentAccessTest
2. Run integration tests
  
Actual results:
Test fails

Expected results:
Test passes

Additional info:

See the upstream https://issues.jboss.org/browse/JBSEAM-4976 and related issues for more information and applicable workarounds.
Comment 1 mark yarborough 2012-11-05 10:22:27 EST
Known issue for WFK 2.1.
Comment 4 Marek Schmidt 2013-03-19 07:47:05 EDT
Verified on WFK 2.2.0.ER2
Comment 5 Sneha 2013-03-21 04:51:04 EDT
Updated Doc Text.
Comment 6 Karel Piwko 2013-05-14 10:50:14 EDT
Closed as CURRENTRELEASE, part of WFK 2.2.0 distributables.

Note You need to log in before you can comment on or make changes to this bug.