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

    Update NodeInstanceLog in BRMS 5.3.1

    Ale Ale Newbie

      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