JBoss Community

JBPM 4.4 and Spring Integration Problem: Session is closed

created by Bryan Shaw in jBPM - View the full discussion

I have encountered problem when I am using JBPM 4.4 with Spring 3.5 and Hibernate 3 and Struts2.

When we put multiple users to use the system, JBPM operation will randomly cause Hibernate Exception states: "Session is closed".

I have checked the JBPM + Spring integration configuration and I can't found error.

Did anybody encountered the same problem here? Please lend a hand to help me.

 

This is my "jbpm.tx.spring.cfg.xml"


<?xml version="1.0" encoding="UTF-8"?>

     <jbpm-configuration spring="enabled">

     <process-engine-context>

            <command-service name="newTxRequiredCommandService">

              <retry-interceptor />

              <environment-interceptor policy="requiresNew" />

              <spring-transaction-interceptor transaction-manager="transactionManager" policy="requiresNew" current="false"/>

            </command-service>

 

         <!-- Default command service has a Spring transaction interceptor-->

         <command-service name="txRequiredCommandService">

                <retry-interceptor />

                <environment-interceptor />

                <spring-transaction-interceptor transaction-manager="transactionManager" current="true"/>

         </command-service>

    </process-engine-context>

 

     <transaction-context>

         <transaction type="spring" />

         <hibernate-session current="true" close="false" tx="true"/>

    </transaction-context>

 

</jbpm-configuration>

 

And my jbpm-cfg.xml looks like this:

<?xml version="1.0" encoding="UTF-8"?>

<jbpm-configuration>

  <import resource="jbpm.default.cfg.xml" />

  <import resource="jbpm.tx.spring.cfg.xml" />

  <import resource="jbpm.jpdl.cfg.xml" />

  <!--<import resource="jbpm.bpmn.cfg.xml" />-->

  <import resource="jbpm.identity.cfg.xml" />

  <import resource="jbpm.businesscalendar.cfg.xml" />

  <import resource="jbpm.console.cfg.xml" />

  <import resource="jbpm.jobexecutor.cfg.xml" />

  <types resource="jbpm.variable.types.xml" />

</jbpm-configuration>

 

We use OpenSessionInView filter in our web application that means every request will have its own hibernate session opened for it.

But we find that even I begin a request handling action method with a call to the JBPM task service it still may cause session is closed error.

Any idea?

Reply to this message by going to Community

Start a new discussion in jBPM at Community