[jboss-user] [jBPM] New message: "JBpm 4.3 + Spring 3 transaction problem at buildProcessEngine"

Tom Meier do-not-reply at jboss.com
Thu Jan 28 10:26:37 EST 2010


User development,

A new message was posted in the thread "JBpm 4.3 + Spring 3 transaction problem at buildProcessEngine":

http://community.jboss.org/message/522788#522788

Author  : Tom Meier
Profile : http://community.jboss.org/people/tom42332

Message:
--------------------------------------------------------------
When starting up JBPM using Configuration.buildProcessEngine() I get an exception
 
org.jbpm.api.JbpmException: no jBPM DB schema: no JBPM4_EXECUTION table.   Run the create.jbpm.schema target first in the install tool.
    at org.jbpm.pvm.internal.cmd.CheckDbCmd.execute(CheckDbCmd.java:50)
 
I put a breakpoint at CheckDbCmd at that line and found out that there is an underlying exception:
org.hibernate.HibernateException: createQuery is not valid without active transaction

 
However transactions are definitely enabled (Spring transactions, see stacktrace below). I've also tried a multitude of variations of configuring transaction management in jbpm, such as <hibernate-session current="true" /> and changing current to false and lots of other variations.I somehow have the impression it could be related to Tom Baeyens http://community.jboss.org/thread/145924.
 
Has anyone any idea how to solve this?
 
Using JBPM 4.3, Spring 3.0.0, Hibernate 3.3.1, MSSQL Server.
 
jbpm.cfg.xml:
<?xml version="1.0" encoding="UTF-8"?>

<jbpm-configuration spring="enabled">

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

     <process-engine-context>
         <repository-service />
         <repository-cache />
         <execution-service />
         <history-service />
         <management-service />
         <identity-service />
         <task-service />
          
         <string name="spring.cfg" value="jbpm/jbpm-spring-config.xml" />
 
             <types resource="jbpm.variable.types.xml" />

         <object class="org.jbpm.pvm.internal.id.DatabaseDbidGenerator">
           <field name="commandService"><ref object="newTxRequiredCommandService" /></field>
         </object>
         <object class="org.jbpm.pvm.internal.id.DatabaseIdComposer" init="eager" />
     
         <command-service name="txRequiredCommandService">
              <skip-interceptor />
              <retry-interceptor />
          <environment-interceptor />
          <spring-transaction-interceptor />
         </command-service>
     
         <command-service name="newTxRequiredCommandService">
          <retry-interceptor />
          <environment-interceptor policy="requiresNew" />
          <spring-transaction-interceptor policy="requiresNew" />
         </command-service>
         
     </process-engine-context>
     

     <transaction-context>
         <repository-session />
         <db-session />
         <message-session />
         <timer-session />
         <identity-session />
         
         <history-sessions>
          <object class="org.jbpm.pvm.internal.history.HistorySessionImpl" />
             </history-sessions>
     
         <transaction type="spring" />
         <hibernate-session current="true" />

.
 
jbpm/spring application context:
<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans" 
          xmlns:aop="http://www.springframework.org/schema/aop" 
          xmlns:context="http://www.springframework.org/schema/context"
          xmlns:tx="http://www.springframework.org/schema/tx"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="
          http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
          http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd
          http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd
          http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd">

  <import resource="../properties-config.xml"/>

  <bean id="springHelper" class="org.jbpm.pvm.internal.processengine.SpringHelper">
       <property name="jbpmCfg" value="jbpm/jbpm.cfg.xml"/>
  </bean>

  <bean id="processEngine" factory-bean="springHelper" factory-method="createProcessEngine" />
  
  <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
    <property name="sessionFactory" ref="sessionFactory" />
    <property name="dataSource" ref="dataSource" />
  </bean>

  <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
    <property name="configLocation" value="classpath:/jbpm/jbpm.hibernate.cfg.xml" />
    <property name="dataSource" ref="dataSource" />
  </bean>
  
  <bean id="dataSource" class="org.springframework.jdbc.datasource.SimpleDriverDataSource">
    <property name="driverClass" value="net.sourceforge.jtds.jdbc.Driver" />
    <property name="url" value="jdbc:jtds:sqlserver://${Database.server}:${Database.port}/${Database.database}" />
    <property name="username" value="${Database.user}" />
    <property name="password" value="${Database.password}" />
  </bean>

</beans>

.
 
jbpm.hibernate.cfg.xml
<?xml version="1.0" encoding="utf-8"?>

<!DOCTYPE hibernate-configuration PUBLIC
          -//Hibernate/Hibernate Configuration DTD 3.0//EN
          http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd>

<hibernate-configuration>
    <session-factory>
        <property name="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</property>
         <property name="hibernate.current_session_context_class">thread</property>
        
        <mapping resource="jbpm.repository.hbm.xml" />
        <mapping resource="jbpm.execution.hbm.xml" />
        <mapping resource="jbpm.history.hbm.xml" />
        <mapping resource="jbpm.task.hbm.xml" />
        <mapping resource="jbpm.identity.hbm.xml" />
    </session-factory>
</hibernate-configuration>



--------------------------------------------------------------

To reply to this message visit the message page: http://community.jboss.org/message/522788#522788




More information about the jboss-user mailing list