myfaces-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael Kurz (JIRA)" <...@myfaces.apache.org>
Subject [jira] [Created] (MYFACES-3326) UIData does not preserve submitted values on immediate requests
Date Mon, 26 Sep 2011 13:51:26 GMT
UIData does not preserve submitted values on immediate requests
---------------------------------------------------------------

                 Key: MYFACES-3326
                 URL: https://issues.apache.org/jira/browse/MYFACES-3326
             Project: MyFaces Core
          Issue Type: Bug
          Components: JSR-314
    Affects Versions: 2.1.3
            Reporter: Michael Kurz


I have a h:dataTable component with an h:inputText component per row bound to a list. Now
I want to add a new row with a h:commandLink outside the table via ajax. This link is immediate
to avoid validation on the input components.

The problem is, that when I set the command link immediate, data the user entered into the
input components vanishes (render and execute in f:ajax are set to the table). I did some
investigations and saw that UIData.encodeBegin() resets the state (and submitted values!)
before rendering. IMO, the submitted values must be preserved if phases 3 to 5 are skipped.

I first thought that setting _isValidChilds to false in processDecodes if renderResponse()
is called might work. But as the link is outside and after the table renderResponse() is not
called yet at that point. I wonder what the correct way to handle this could be? Maybe remember
if processValidators() was called on the table. If not, don't kill the state.

Btw. the same applies for ui:repeat.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message