The ThreadLocal approach will work, however you will need to customize the configuration objects to fit your needs.

For instance if the DataDomain is assigned to the session on creation (i.e. each session can only access a single DD), you can subclass WebApplicationContextFilter, overriding 'doFilter' to pick a specific domain for your session DataContext.

Andrus


On Apr 5, 2006, at 6:10 PM, Gentry, Michael ((Contractor)) wrote:

Andrus, would this work for more complex data models?  I have 6
DataDomains in mine.  :-)


-----Original Message-----
From: Andrus Adamchik [mailto:[EMAIL PROTECTED]
Sent: Wednesday, April 05, 2006 4:00 AM
To: [email protected]
Subject: Re: accessing cayenne sessions



On Apr 5, 2006, at 2:36 AM, Cypher her wrote:

public class MyBasePage extends BasePage
{

   public DataContext getDataContext()
   {
       return DataContext.getThreadDataContext();
   }
}

and all of  my pages should subclass MyBasePage. And I am assuming
Tapestry and the servlet container will take care of making sure
the Session is consistent throughout the workflow i.e. each user
gets a unique DataContext and they maintain the same DataContext
from page to page until the session times out..

Yep, HttpSession is a servlet container feature. It just works.

Andrus



Reply via email to