On Mon, Nov 1, 2010 at 4:21 PM, Mark Proctor <mproctor(a)codehaus.org> wrote:
On 01/11/2010 15:31, tizo wrote:
On Wed, Oct 27, 2010 at 5:21 PM, tizo <tizone(a)gmail.com> wrote:
> Hi there,
>
> I have seen in chapter 6 of the documentation, that Drools Flow can be
> configured to use JPA and transactions to persist the running states.
> However, I am in a EJB where I obtain entity managers with a
> @PersistenceContext annotation, and the transactions are managed by the
> container, whereas in the example an EntityManagerFactory and a
> TransactionManager are used.
>
> Could I configure Flow in a direct way to be used by my EJB?
>
> Thanks very much,
>
> tizo
>
>
Ok, looking at the code, I guess that Drools flow is not ready to work
with standards EJBs. The reasons are the following:
* The JPA annotations are not standard JPA annotations, but hibernate
ones. For example "CollectionOfElements" in ProcessInstanceInfo class.
That was the one element we couldn't find a replacement for in JPA1, JPA2
fixes this, but we haven't updated to JPA2 yet. I don't believe we use any
other hibernate specific annotations.
* Transactions are managed by Drools, as opposed to some EJBs where
transactions are managed by the container.
You can use both JTA transactions and local entity transactions. So
transactions can be drools maintained or container/external maintained.
As for that, I will probably modify the codes, so Flow could be used in our
EJBs. I would like to know if someone could guide me on what should I
modify.
I will post the modifications in case they are of interest to someone.
Thanks very much,
tizo
Mark,
Thanks for your response. Could you tell me how can I use Drools with my
container managed transactions, or where can I read how to do that?. I think
that the example given in the documentation (Drools Flow, 6.1.4 -
Transactions) does not apply to this case, and I can't figure out how to do
it.
Thanks again,
tizo