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

Leonardo Uribe commented on MYFACES-2594:
-----------------------------------------

At first view, I think the case with PARTIAL_STATE_SAVING=false should work 
(because the whole tree is saved and restored) and the case with 
PARTIAL_STATE_SAVING=true should not. We should verify these conditions first.

> Facelets state saving doesn't handle well programmatic component manipulation
> -----------------------------------------------------------------------------
>
>                 Key: MYFACES-2594
>                 URL: https://issues.apache.org/jira/browse/MYFACES-2594
>             Project: MyFaces Core
>          Issue Type: Bug
>          Components: General
>    Affects Versions: 2.0.0-beta-3
>         Environment: myfaces trunk
>            Reporter: Martin Koci
>            Priority: Minor
>
> Simple tests (code pasted below) outputs following results: 
> 1) JSP: switchs colums at every click with no problem
> 2) Facelets with javax.faces.PARTIAL_STATE_SAVING=false - no visual switch
> 3) Facelets with javax.faces.PARTIAL_STATE_SAVING=true switchs colums at 
> every click with no problem
> Common code from test.jspx and test.xhtml
> ... jsp: or facelets stuff  here ...
>     <h:form id="form">
>        <h:commandButton value="Switch columns">
>         <f:actionListener binding="#{testBean}" />
>       </h:commandButton>
>       <h:dataTable id="table">
>         <h:column>
>           <f:facet name="header">
>             <h:outputText value="firstName" />
>           </f:facet>
>         </h:column>
>         <h:column>
>           <f:facet name="header">
>             <h:outputText value="surname" />
>           </f:facet>
>         </h:column>
>       </h:dataTable>
>      </h:form>
> @ManagedBean
> @RequestScoped
> public class TestBean implements ActionListener {
>         public void processAction(ActionEvent event) throws 
> AbortProcessingException {
>                 FacesContext context  = FacesContext.getCurrentInstance();
>                 UIComponent table = 
> context.getViewRoot().findComponent("form:table");
>                 UIComponent column1 = table.getChildren().get(0);
>                 UIComponent column2 = table.getChildren().get(1);
>                 table.getChildren().clear();
>                 table.getChildren().add(column2);
>                 table.getChildren().add(column1);
>         }
> }

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to