Also, I like to search google for something like the following: stackoverflow jpa lazy transactionattribute
and I found the following: http://stackoverflow.com/questions/8056688/can-lazy-fetched-field-be-modified-before-loaded you can click-and-read related links on stackoverflow and on google. :) On Fri, Aug 16, 2013 at 6:26 AM, Howard W. Smith, Jr. < [email protected]> wrote: > Lee, I will let someone else answer your questions, but your test case > reminded me of a BalusC (JSF guru) blog[1] that I visited many months ago. > It does not answer your question, but it is an alternate solution for what > you are already attempting to do...I think. :) > > [1] http://balusc.blogspot.com/2007/03/user-session-filter.html > > > On Fri, Aug 16, 2013 at 6:10 AM, leesy <[email protected]> wrote: > >> I'm having trouble getting my head around Java EE, transactions & lazy >> loading & I was wondering if anyone could be kind enough to help me get >> things straight in my head. It's something I've never quite got right. >> I'll try & keep the code samples in this email short, but I'll add links >> to >> fuller examples at the end. Sorry if this was better on say the OpenJPA >> Users list. >> >> I've got a piece of code that retrieves a `User` from the Database, >> performs >> some validation on it & then attempts to create another DB object called >> `StoredCookie` if that validation passes. So imagine something like: >> >> >> >> Now I'm having two separate troubles depending how I do things. >> >> The first issue is that the User object u is being detached after the call >> to findByEmail. The customer property of user is defined using a >> FetchTYpe >> of LAZY & I believe this combined with my use of >> TransactionAttributeType.REQUIRED at class level on my DAO's, is what is >> causing the entity to come back detached. So I've got over this hurdle by >> adding a TransactionAttributeType of NEVER to any find methods. This >> seems >> to leave the user object detached. Although this is what I want, I don't >> think I'm doing things right as it's probably causing issue #2. >> >> The second issue comes about when I call storedCookieDAO.persist(...). It >> gives me a message saying that "The given instance >> "com.oobjects.sso.model.User-252" is not managed by this context". The >> user >> is still attached to something, as I can fetch lazily fetched properties. >> But as the UserDAO & StoredCookieDAO shared an entity manager (checked the >> hash codes to make sure they are the same), I'm a little confused as to >> what >> they are attached to. >> >> Does anyone know what I'd need to do allow my StoredCookie to be >> persisted? >> What is the User object attached to that's preventing it being persisted >> by >> another DAO using the same entity manager? >> >> Here are a few code samples of how I am attempting various bits: >> https://gist.github.com/LTheobald/6248694 >> <https://gist.github.com/LTheobald/6248694> >> >> Thanks for any help anyone can give, >> Lee >> >> >> >> -- >> View this message in context: >> http://openejb.979440.n4.nabble.com/Java-EE-transactions-lazy-loading-tp4664670.html >> Sent from the OpenEJB User mailing list archive at Nabble.com. >> > >
