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

Bill Lucy commented on MYFACES-4318:
------------------------------------

This is related to MYFACES-3811 - when the legacy TagHandlers are used 
(org.apache.myfaces.STRICT_JSF_2_FACELETS_COMPATIBILITY=true) then the input 
value is not lost.  State is lost with the default TagHandler because we end up 
using a deserialized copy of the backing bean.  I have an idea for a patch: 
ForEachHandler can check to see if the local iterator bean instance (which is 
correct) matches the restored instance (which might have been deserialized), 
and replace the incorrect one.  Feedback on this would be helpful.

> c:forEach problem with client side state saving
> -----------------------------------------------
>
>                 Key: MYFACES-4318
>                 URL: https://issues.apache.org/jira/browse/MYFACES-4318
>             Project: MyFaces Core
>          Issue Type: Bug
>    Affects Versions: 2.2.12, 2.3.6
>            Reporter: Bill Lucy
>            Priority: Major
>         Attachments: jsf_foreach_client_state.war, 
> jsf_foreach_client_state_mvn.zip
>
>
> There appears to be a problem with c:forEach when client side state saving is 
> enabled -  component states are not restored correctly after a submit.  For 
> example, the text entered into this inputText is lost:
> {{{color:#800000}<c:forEach{color} 
> {color:#ff0000}var{color}{color:#000000}={color}{color:#0000ff}"current"{color}
>  
> {color:#ff0000}items{color}{color:#000000}={color}{color:#0000ff}"#\{list.items}"{color}{color:#800000}>{color}}}
> {{{color:#800000}<h:inputText{color} 
> {color:#ff0000}value{color}{color:#000000}={color}{color:#0000ff}"#\{current.value}"{color}{color:#800000}/>{color}}}
> {{{color:#800000}<h:commandButton{color} 
> {color:#ff0000}value{color}{color:#000000}={color}{color:#0000ff}"submit"{color}{color:#800000}/>{color}}}
> {{{color:#800000}</c:forEach>{color}}}
>  
> This example works (the inputText is not lost) with server side state saving 
> enabled, and it also works on Mojarra with client side state saving. I 
> haven't figured out what exactly is causing this behavior yet - if anyone 
> else has insight in this area I'd appreciate hints.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to