[jbpm-users] [JBoss jBPM] - Re: jBpm and JPA

Vytautas Civilis civilis at idega.com
Tue Dec 9 04:13:32 EST 2008


How I'm doing this (bit hacky):

I have my own JbpmConfiguration implementation, where I control, how
JbpmContext is created.
I inject the thread local hibernate session object to JbpmContext.
Session object is resolved from entitymanager:

public JbpmContext createJbpmContext(String name) {

        JbpmContext current = getCurrentJbpmContext();
        JbpmContext context;
       
        if(current != null) {
            context = current;
        } else {
           
            context = super.createJbpmContext(name);
            Session hibernateSession =
(Session)getEntityManagerFactory().createEntityManager().getDelegate();
            context.setSession(hibernateSession);
        }
       
        Session hibernateSession = context.getSession();
       
        if(hibernateSession.getTransaction().isActive()) {
       
            getDoCommitStack().push(false);
           
        } else {
       
            hibernateSession.getTransaction().begin();
            getDoCommitStack().clear();
            getDoCommitStack().push(true);
        }
       
        return context;
    }


Then you need to override jbpmContextClosed method too (to commit
transaction):

@Override
    void jbpmContextClosed(JbpmContext jbpmContext) {
       
        if(getDoCommitStack().isEmpty() || getDoCommitStack().pop()) {
           
            try {
                jbpmContext.getSession().getTransaction().commit();
               
            } catch (StaleObjectStateException e) {
                throw new JbpmPersistenceException("Exception while
commiting jbpmContext transaction", e);

            } finally {
                super.jbpmContextClosed(jbpmContext);
            }
        }
    }


I hope that it is only temporary solution.

cvl

MikeSchulze wrote:
> Hi bcornouiller
>
> did you find a solution for your problem? If that's the case, I'd be interessted in hearing something about it.
>
> thx - Mike
>
> View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4195236#4195236
>
> Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4195236
> _______________________________________________
> jbpm-users mailing list
> jbpm-users at lists.jboss.org
> https://lists.jboss.org/mailman/listinfo/jbpm-users
>   



More information about the jbpm-users mailing list