Add a "hidden fields" parameter to BeanEditor and BeanEditForm
--------------------------------------------------------------

                 Key: TAPESTRY-2249
                 URL: https://issues.apache.org/jira/browse/TAPESTRY-2249
             Project: Tapestry
          Issue Type: Improvement
          Components: tapestry-core
    Affects Versions: 5.0.11
            Reporter: Geoff Callender


A "hidden fields" parameter would allow code like this:

<t:beaneditform t:id="form" object="person" submitLabel="Save" 
hidden="version"/>

instead of this:

<t:beaneditform t:id="form" object="person" submitLabel="Save">
        <!-- Include version in the form to prevent it being updated/refreshed 
in onActivate(), which would defeat optimistic locking. -->
        <t:parameter name="version">
                        <t:hidden t:id="version" value="person.version"/>
        </t:parameter>
</t:beaneditform>

Please note this is not the same as using remove, eg:

<t:beaneditform t:id="form" object="person" submitLabel="Save" 
remove="version"/>

which in this example would defeat optimistic locking because version's value 
would no longer make the round-trip to the client.

In case it helps, here's what onActivate() might looks like in this example:

        private Long _personId;

        @Persist("flash")
        private Person _person;

        void onActivate(Long id) throws Exception {
                _personId = id;

                if (_person == null) {
                        _person = getPersonService().findPerson(_personId);

                        if (_person == null) {
                                throw new Exception("Person " + _personId + " 
does not exist.");
                        }
                }
        }



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


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to