On Thursday 11 December 2008 22:52:06 Musachy Barroso wrote:
> > Have you ever used the nested-tags in Struts-1.1?
> 
> Just for a few months to add it to my resume :)

I've been depending on the nested-tags for years:-)

> > This example is rather simple, but in much more complicated forms, inside 
> > iterators for example, where you want to reuse JSPs it is >*extremely* 
> > useful to avoid code-douplication. Much easier to generate dynamic 
> > user-interfaces this way. The philosophy is "as long as >I'm inside this 
> > nested-context I know I can render this piece of code regardless of the 
> > object-hierarchy the object resides in".
> 
> I understand, but I still don't get why the push tag is not enough.

What I don't understand is why the push-tag isn't enough either:-) The point is 
that the push-tag only makes the value of the input-tags corrent, not the 
"name"-attribute. Why it's designed that way I don't know, but that's what I'm 
suggesting to change.
Go ahead and try it and you'll quickly see what I mean.

Take this example here:
http://struts.apache.org/2.1.2/docs/struts-2-spring-2-jpa-ajax.html
In index.jsp it has:
        <div style="width: 300px;border-style: solid">
                        <p>Person Data</p>
                        <s:form action="save" validate="true">
                                <s:textfield id="id" name="person.id" 
cssStyle="display:none"/>
                                        <s:textfield id="firstName" 
label="First Name" name="person.firstName"/>
                                        <s:textfield id="lastName" label="Last 
Name" name="person.lastName"/>
                                        <s:submit theme="ajax" 
targets="persons" notifyTopics="/save"/>
                        </s:form>
        </div>

And I propose changing it so that you can write this insted:

        <div style="width: 300px;border-style: solid">
                        <p>Person Data</p>
                        <s:form action="save" validate="true">
                                <s:push value="person">
                                <s:textfield id="id" name="id" 
cssStyle="display:none"/>
                                        <s:textfield id="firstName" 
label="First Name" name="firstName"/>
                                        <s:textfield id="lastName" label="Last 
Name" name="lastName"/>
                                        <s:submit theme="ajax" 
targets="persons" notifyTopics="/save"/>
                                </s:push>
                        </s:form>
        </div>

Notice how the "person." part is missing from the input-tags.

-- 
Andreas Joseph Krogh <andr...@officenet.no>
Senior Software Developer / CEO
------------------------+---------------------------------------------+
OfficeNet AS            | The most difficult thing in the world is to |
Karenslyst Allé 11      | know how to do a thing and to watch         |
PO. Box 529 Skøyen      | somebody else doing it wrong, without       |
0214 Oslo               | comment.                                    |
NORWAY                  |                                             |
Tlf:    +47 24 15 38 90 |                                             |
Fax:    +47 24 15 38 91 |                                             |
Mobile: +47 909  56 963 |                                             |
------------------------+---------------------------------------------+

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@struts.apache.org
For additional commands, e-mail: dev-h...@struts.apache.org

Reply via email to