Now I'm wondering if there's a way out at all, or does it mean Tacos would mean get rid of using Custom Components?
Nah, that sounds too bad!! - Really. Very unlike Tapestry/Tacos.
I sure hope we're overseeing something,
Andy, Jesse, et al bail us out :-)
On 9/14/06,
Chaitanya Jeerage <[EMAIL PROTECTED]> wrote:
Let me try to rephrase, we have two instances of the same custom
component in the page, Initially when the page is rendered we have one
TextField in each instance of the component (Telephone and email) .
Tapestry assigns a name for each of the TextField, say TextField_0 and
TextField_1.
Now on addition of new telephone (through ajaxEventSubmit) only the
telephone component is updated (as required), we have two TextFields
in telephone and one in email (Note email component was not updated).
For the newly added TextField Tapestry assigns the name "TextField_1"
, the name is same as the TextField in email.
On form submission, because of two fields having the same name
"TextField_1" the data is getting mixed up.
-Chaitanya
On 9/14/06, andyhot <[EMAIL PROTECTED]> wrote:
> B.S.Navin wrote:
> > Looking at the original post, it looks like the person wants a unique
> > "name" attribute.
> >
> errr... i thought he couldn't refresh the specific part... my mistake
> > But Andy's solution will provide a unique "id" attribute. (As "name"
> > is a reserved parameter in TextField, and is calculated using the
> > components original ID - not the bound id).
> >
> > So I feel that, even though the ID is unique, the name still can
> > conflict and result in the the data being clobbered - as HTML form
> > submission uses the "name" attribute, rather than the "id" attribute.
> >
> Even if that's the case, why is it problematic to have controls with the
> same name?
> I believe Tapestry handles them correctly
> > On 14-Sep-06, at 11:48 AM, andyhot wrote:
> >
> >
> >> Here's a trick that some tacos components use to get past this issue.
> >>
> >> in your CustomField.jwc
> >>
> >> <component id="myTextField" type="TextField" inherit-informal-
> >> parameters="yes">
> >> <binding name="id" value="components.myTextField.idPath"/>
> >> <binding name="name" value="name"/>
> >> </component>
> >>
> >>
> >> ognl:components.tableSection.idPath
> >>
> >> Chaitanya Jeerage wrote:
> >>
> >>> 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
> >>>
> >>>
> >>>
> >> --
> >> Andreas Andreou - [EMAIL PROTECTED] - http://andyhot.di.uoa.gr
> >> Tapestry / Tacos developer
> >> Open Source / J2EE Consulting
> >>
> >>
> >> ----------------------------------------------------------------------
> >> ---
> >> 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
> >>
> >>
> >
> >
> > -------------------------------------------------------------------------
> > 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
> >
> >
>
>
> --
> Andreas Andreou - [EMAIL PROTECTED] - http://andyhot.di.uoa.gr
> Tapestry / Tacos developer
> Open Source / J2EE Consulting
>
>
> -------------------------------------------------------------------------
> 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
>
-------------------------------------------------------------------------
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
--
Thanks, Karthik
------------------------------------------------------------------------- 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
