Howard, What is the recommended solution that will submit the form on a link and pass in an id?
thanks, Mark -----Original Message----- From: Howard Lewis Ship [mailto:[EMAIL PROTECTED] Sent: Thu 8/18/2005 9:47 AM To: Tapestry development Subject: Re: [DISCUSS] Deprecate the action service Use a DirectLink component, and pass the id of the invoice as a listener parameter. On 8/18/05, Jonas Maurus <[EMAIL PROTECTED]> wrote: > Howard Lewis Ship <hlship <at> gmail.com> writes: > > > > > I just saw another spat of user problems related to use of the action > > service. I say "use", not "misuse" because, in my opinion, it can't be > > used correctly. The clever tricks for maintaining client and server > > synchronization that have evolved in Tapestry 2.x - 4.0 just aren't > > possible with the action service. > > > > I would very much like to deprecate the action service and the > > ActionLink component. Who out there is using it and why? > > > > I'm currently using the ActionLink component a lot in all my projects together > with contrib:Table. > > The typical use-case looks something like this: > > Invoices.html > [...] > <td jwcid="viewLinkColumnValue"> > <a jwcid="view" href="../viewers/InvoiceViewer.html"> > <span key="list.viewinvoice">details</span> > </a> > </td> > [...] > > Invoices.page > [...] > <component id="invoiceTable" type="contrib:Table"> > <binding name="source" value="invoiceList" /> > <binding name="columns" value="literal:id,subject,total,viewLink,editLink" > /> > <binding name="row" value="currentInvoice" /> > </component> > > <component id="view" type="ActionLink"> > <binding name="listener" value="listener:viewInvoice" /> > </component> > [...] > > Usually the ActionLink's listener then does something like this (Invoice > being a > persistent property of InvoiceViewer): > public IPage viewInvoice(IRequestCycle cycle) { > InvoiceViewer iv = (InvoiceViewer)cycle.getPage("viewers/InvoiceViewer"); > iv.setInvoice(getCurrentInvoice()); > return iv; > } > > This pattern comes from contrib:Table's documentation. At least, should > ActionLink be removed, alternatives have to be documented well before we're > doing it, especially in places like contrib:Table, where the documentation > makes > explicit use of this component. > > Still, I don't know enough about Tapestry's internals to know if it would be a > good decision, but in any way, if it happens, it should happen now. As I've > said > before, it's better to make porting to 4.0 a major pain and support 3.0 a > little > bit longer than making big changes between 4.0 and 4.1. > > How would you solve the above problem without using ActionLink? > > cheers, > Jonas > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > -- Howard M. Lewis Ship Independent J2EE / Open-Source Java Consultant Creator, Jakarta Tapestry Creator, Jakarta HiveMind Professional Tapestry training, mentoring, support and project work. http://howardlewisship.com --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
