I did not quite follow Henri's idea.
I would do exacly as you suggest- persist just the id and use it.
*maybe* that will work:
<property name="id" persist="..."/>
<property name="object" initial-value="populateId(id)"/>
public Object populateId(Object id) {
return ....;
}
Cheers,
Ron
ציטוט Martin Strand:
Ok, does that mean that the best way is to persist the object id and
then simply re-create the object myself on each request?
That's what I'm doing now, I just found that the same set of methods
(detach(), get/setSomeObject(), @Persist get/setSomeObjectId()) keeps
repeating itself in several of my page classes, so I figured perhaps
Tapestry could give me a hand. :)
--Martin
On Tue, 01 Nov 2005 17:44:27 +0100, Howard Lewis Ship
<[EMAIL PROTECTED]> wrote:
The client property persistent manager doesn't use the data squeezer;
it always serializes a bunch of objects to a MIME64 stream. A
DataSqueezer is used for objects encoded as listener parameters or as
hidden form fields.
On 11/1/05, Robert Zeigler <[EMAIL PROTECTED]> wrote:
Create a custom data squeezer for your object and register it.
Robert
Martin Strand wrote:
> Hi.
> I want to persist a large object on the client, but it would be much
> better if I could just persist its id and then re-create it on the
> server on each request. Can Tapestry do this for me? I could do it
> myself, something like this:
>
> ----
> private User user;
>
> public void detach()
> {
> user = null;
> super.detach();
> }
>
> public User getUser()
> {
> if (user == null)
> {
> user = new User(getUserId());
> }
> return user;
> }
>
> @Persist("client:page")
> public abstract int getuserId();
> ----
>
>
>
> But I'd prefer to let Tapestry do it for me, something like this:
>
> ----
> @Persist("client:page")
> public abstract User getUser();
> ----
>
> How could I make the second version understand that it only needs to
> persist the user id?
>
> Thanks,
> Martin
---------------------------------------------------------------------
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]