0 Replies Latest reply on Dec 20, 2013 11:29 AM by dtalex

    Update NodeInstanceLog in BRMS 5.3.1

    dtalex

      Hi I'm using BRMS standalone 5.3.1

       

      I'm managing JBPM processes from a custom EJB.

       

      I successfully managed to start processes and signal them from my EJB.

       

      Processes correctly executes and update tables PROCESSINSTANCEINFO and PROCESSINSTANCELOG get updated.

       

      But NODEINSTANCELOG does not get updated.

       

      Here is my code:

       

      EntityManagerFactory emf =
      Persistence.createEntityManagerFactory( "org.jbpm.persistence.jpa.local" );
      Environment env = KnowledgeBaseFactory. newEnvironment();
      env.set( EnvironmentName.GLOBALS, new MapGlobalResolver());
      env.set( EnvironmentName.ENTITY_MANAGER_FACTORY, emf );
      env.set( EnvironmentName.TRANSACTION_MANAGER,
      TransactionManagerServices.getTransactionManager() );
      Properties sessionconfigproperties = new Properties();
      sessionconfigproperties.put("drools.processInstanceManagerFactory", "org.jbpm.persistence.processinstance.JPAProcessInstanceManagerFactory");
      sessionconfigproperties.put("drools.processSignalManagerFactory", "org.jbpm.persistence.processinstance.JPASignalManagerFactory");
      KnowledgeSessionConfiguration config = KnowledgeBaseFactory.newKnowledgeSessionConfiguration(sessionconfigproperties);
      ksession = JPAKnowledgeService.newStatefulKnowledgeSession( kbase, config, env );
      

       

      Here is my persistence-unit

       

        <persistence-unit name="org.jbpm.persistence.jpa.local" transaction-type="JTA">
          <provider>org.hibernate.ejb.HibernatePersistence</provider>
          <jta-data-source>java:/OracleDS</jta-data-source>      
          <mapping-file>META-INF/JBPMorm.xml</mapping-file>
          <mapping-file>META-INF/ProcessInstanceInfo.hbm.xml</mapping-file>
          <mapping-file>META-INF/ExtraIndexes.hbm.xml</mapping-file>
          <class>org.jbpm.persistence.processinstance.ProcessInstanceInfo</class>
          <class>org.drools.persistence.info.SessionInfo</class>
          <class>org.drools.persistence.info.WorkItemInfo</class>
          <class>org.jbpm.process.audit.ProcessInstanceLog</class>
           <class>org.jbpm.process.audit.NodeInstanceLog</class>
         <!-- <class>org.jbpm.process.audit.VariableInstanceLog</class> -->
          <properties>
            <!--<property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect"/>-->         
      <property name="hibernate.dialect" value="org.hibernate.dialect.Oracle10gDialect"/>
            <property name="hibernate.max_fetch_depth" value="3"/>
            <property name="hibernate.hbm2ddl.auto" value="none" />
            <property name="hibernate.show_sql" value="false" /> 
            <property name="hibernate.transaction.manager_lookup_class" value="org.hibernate.transaction.JBossTransactionManagerLookup" />
          </properties>       
        </persistence-unit>
      

       

      and this is my Datasource:

       

      <datasources>
          <local-tx-datasource>
              <jndi-name>OracleDS</jndi-name>
              <use-java-context>true</use-java-context>
              <min-pool-size>0</min-pool-size>
              <max-pool-size>20</max-pool-size>
              <blocking-timeout-millis>30000</blocking-timeout-millis>
              <idle-timeout-minutes>30</idle-timeout-minutes>
              <background-validation>false</background-validation>
              <background-validation-millis>0</background-validation-millis>
              <validate-on-match>true</validate-on-match>
              <use-fast-fail>false</use-fast-fail>
              <allocation-retry>0</allocation-retry>
              <allocation-retry-wait-millis>5000</allocation-retry-wait-millis>
              <security-domain xsi:type="securityMetaData" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
              <metadata>
                  <type-mapping>Oracle9i</type-mapping>
              </metadata>
              <type-mapping>Oracle9i</type-mapping>
              <local-transaction/>
              <user-name>brms_standalone</user-name>
              <password>brms_standalone</password>
              <check-valid-connection-sql>SELECT * FROM DUAL</check-valid-connection-sql>
              <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter</exception-sorter-class-name>
              <prepared-statement-cache-size>0</prepared-statement-cache-size>
              <share-prepared-statements>false</share-prepared-statements>
              <set-tx-query-timeout>false</set-tx-query-timeout>
              <query-timeout>0</query-timeout>
              <use-try-lock>60000</use-try-lock>
              <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
              <connection-url>jdbc:oracle:thin:@host:1521:orcl</connection-url>
          </local-tx-datasource>
      </datasources>
      

       

       

      Can you please help?.

      Regards,

      Ale