Issue: Data *wrongly* getting updated due to Tapestry/Tacos handling
of Textfield Name convention when it is embedded within a custom
component.
When we use a Custom component which has a Text Field in it, we can
end up with two TextFields with the **SAME NAME** after an
AjaxEventSubmit call.
So let's say we have:
<span jwcid="[EMAIL PROTECTED]" source="ognl:telephones"
value="ognl:currentTelephone">
<input jwcid="[EMAIL PROTECTED]:customField"
value="ognl:currentTelephone.number"/>
</span>
<span jwcid="[EMAIL PROTECTED]" source="ognl:emails"
value="ognl:currentTelephone">
<input jwcid="[EMAIL PROTECTED]:customField"
value="ognl:currentEmail.email"/>
</span>
The "customField" component has a embedded "TextField"
The custom component looks like this:
CustomField.jwc partial code
<component id="TextField" type="TextField"
inherit-informal-parameters="yes">
<binding name="id" value="id"/>
<binding name="name" value="name"/>
</component>
So when the Page is initially rendered, the TextFields come with Names
as "TextField_0", "TextField_1" etc. NOTE however that there is no
distinguishing by naming convention which TextField "belongs" to which
component, via naming convention. The reason for TextField_0 seems
to be because of the JWCID in the CustomField.jwc
Now when we have an Ajax call to add a Telephone number to the
Telephone List the clash occurs! Since add to the Telephone list
creates a new TextField_xx, it clashes with the Emails because we're
doing a partial refresh of the Telephone List portion using Ajax.
On form submit we can get some Telephone data into Email fields!!
However, in the same scenario, if we directly use a "TextField"
instead of the custom component, for ex
<span jwcid="[EMAIL PROTECTED]" source="ognl:telephones"
value="ognl:currentTelephone">
<input jwcid="[EMAIL PROTECTED]" value="ognl:currentTelephone.number"/>
</span>
on addition of rows to the "telephones" list, new input text fields
are added to the screen and the name generated are like "tele",
"tele_0", "tele_1" , Note, here it is using the jwcid value and so
works fine!!
If TextField could "inherit" it's name from its enclosing component,
we would not have any issues!!
Any pointers please?!
thanks
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Tacos-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/tacos-devel