I believe that's a tacos problem...
Can you try the latest beta-3 from
http://tacos.sourceforge.net/nightly/
and tell us if it works?



Hans Lellelid wrote:

> Hi,
>
> This started out as a question on the Tacos list, but it seems like
> the real issue for me is related to page injection, property setting,
> and session persistence.
>
> The problem that I am facing is that properties that are annotated as
> @Persist do not seem to actually be persisting in the session when
> they are set by another page (using page injection).
>
> For example, I have a ContactList page that uses injection to retrieve
> a ContactEdit page -- and sets a Contact property on the ContactEdit
> page:
>
> public abstract class ContactList extends BasePage {
>     
>     public IPage doAddContact()
>     {
>         ContactEdit page = getContactEdit();
>         Contact contact = new Contact();
>         page.setContact(contact);
>         return page;
>     }
>
>     @InjectPage("ContactEdit")
>     public abstract ContactEdit getContactEdit();
>
> /* ... */
>
> }
>
> In my ContactEdit page I have annotated that the contact property is
> persistent:
>
> public abstract class ContactEdit extends BasePage {
>   /* ... */
>     @Persist(value="session")
>     public abstract Contact getContact();
>     public abstract void setContact(Contact c);
> }
>
> Indeed, when the ContactEdit.html template loads, I can access
> 'contact' property in the template and it does appear to be set to the
> (not NULL) value set by ContactList.doAddContact().  However, when I
> subsequently invoke a listener method on the ContactEdit page (e.g.
> through tacos:AjaxDirectLink) then the getContact() method returns
> null -- indicating, apparently, that the 'contact' property was not
> actually persistent.
>
> At that point, if I set the property (calling setContact()) to a
> non-NULL value from a ContactEdit listener method, then getContact()
> calls from subsequent listener methods (i.e. if I click the
> AjaxDirectLink again) will return the not-NULL object -- so it does
> appear to be correctly persisting once it is set from within the
> ContactEdit page.
>
> Is this something I'm misunderstanding about how property persistence
> works -- especially related to invoking a page by @InjectPage?
>
> I hope this example made sense; I'd be happy to try to rephrase or
> simplify it if it doesn't.  Thanks in advance for any tips -
>
> Hans
>
>
> ---------------------------------------------------------------------
> 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]

Reply via email to