Do a search in documentation for 'DataSqueezer.' That should show you how to build service objects which know how to automatically persist classes via an id and re-instantiate them later, without any manual intervention from you. Anytime Tap has to persist an object in a URL, cookie, or form data, it will automatically use the appropriate squeezer to store just an id. In the case of contrib:Table, you can also use a PrimaryKeyConverter to accomplish the same thing. Without these mechanisms, whenever tapestry persists an object that isn't a native type, it just serializes it and then binhexes it into a string, which generates some incredibly long strings. This is a mechanism that you want to avoid at all costs. Fortunately, it is easy to fix.
--sam On 9/18/06, Leo Sakhvoruk <[EMAIL PROTECTED]> wrote:
Thanks for the advice Martin. Seems to have fixed the problem however I'll need to do some testing to make sure it's all gone. Martin Strand wrote: > Sounds like you have rather large persistent properties. > > 1. You can try @Persist("client:page") to forget properties when the client moves to another page so they don't add up to 15k URLs. :) > > 2. If you don't really need @Persist("client") you can try @Persist("session") instead > > 3. Or, you can persist an object identifier rather than the whole object, ie > @Persist("client:page") > public abstract Long getId() > instead of > @Persist("client:page") > public abstract Object getObject() > > Martin > > On Mon, 18 Sep 2006 17:31:04 +0200, Leo Sakhvoruk <[EMAIL PROTECTED]> wrote: > > >> Hi, >> >> I'm running into issues with Tapestry generating some seriously long >> URLs (something around 15k characters). >> >> I have a page which generates a list of links using the simple "For" >> construct, in the beginning the link URLs are about 2k chars long. Once >> the link is clicked the user is taken to a different page if he/she >> wants to return to the original page by clicking a page link the >> original page is rendered again but now the link URLs are longer!!! >> After a few iterations of this the browser simply can't send the request >> because the URL is huge. >> >> What can I do? The links are generated using DirectLink. >> >> Any advice would be appreciated. >> >> Thanks >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: [EMAIL PROTECTED] >> For additional commands, e-mail: [EMAIL PROTECTED] >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > >
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]