cayenne-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Andrus Adamchik <and...@objectstyle.org>
Subject Re: TransactionDelegate and willCommit
Date Mon, 18 Sep 2006 05:04:27 GMT
> Under what circumstances can there be a transaction which invokes  
> TransactionDelegate but no context at that time

DataContext is not bound to the current thread by default. User has  
to enable this behavior, e.g. by using the filter:

http://cwiki.apache.org/CAYDOC/web-applications.html

Essentially 'getThreadDataContext' it is not related to a  
transaction. It is used in this example only because (if configured)  
it allows a shared delegate instance to do work without knowing  
anything about the surrounding environment.

> 1. willCommit() appears to run even on a query to the database, not  
> just when committing data. But perhaps this is just a naming thing.

This is the expected behavior. Cayenne starts an internal transaction  
on all Queries passed through DataDomain, including selects.

Andrus


On Sep 17, 2006, at 10:51 PM, Aristedes Maniatis wrote:

> We have implemented a TransactionDelegate as per the instructions  
> on http://cwiki.apache.org/confluence/display/CAYDOC/Understanding 
> +Transactions We are however, finding some problems:
>
> 1. willCommit() appears to run even on a query to the database, not  
> just when committing data. But perhaps this is just a naming thing.
>
> 2. We are getting an exception on the line of code "DataContext  
> context = DataContext.getThreadDataContext();"
>
> java.lang.IllegalStateException: Current thread has no bound  
> DataContext.
>
>
> Under what circumstances can there be a transaction which invokes  
> TransactionDelegate but no context at that time?
>
>
> Ari Maniatis
>
>
>
>
> -------------------------->
> ish
> http://www.ish.com.au
> Level 1, 30 Wilson Street Newtown 2042 Australia
> phone +61 2 9550 5001   fax +61 2 9550 4001
> GPG fingerprint CBFB 84B4 738D 4E87 5E5C  5EFA EF6A 7D2E 3E49 102A
>
>


Mime
View raw message