5 Replies Latest reply on Jan 4, 2006 12:17 PM by heismann

    (jbpm+ejb session bean) need examples on how to develop

    mdonato

      Hello All,

      I need some sample about how to integrate my system via ejb session bean, i spent much time to configure and test some options and nothing work, i got troubles with transaction (hang and NullPointerException) and troubles with closed session on hibernate!

      SOMEONE CAN DO THIS FOR ME?

      i've readed a lot of documentation including hibernate ones, but nothing works!

        • 1. Re: (jbpm+ejb session bean) need examples on how to develop
          mdonato

          Hi again!

          No one can help me on this?

          Environment:
          WebSphere 5.1
          Jbpm 3.0
          Ejb Session Bean (CMT)
          MSSQLServer 7.0


          I've tried to use hibernate3, hibernate3rc1, hibernate3.1 but with no success!

           <property name="hibernate.dialect">br.com.glr.populis.util.compatibility.SQLServer7Dialect</property>
           <property name="hibernate.connection.datasource">jdbc/dsPOPULIS</property>
           <property name="hibernate.transaction.factory_class">org.hibernate.transaction.JTATransactionFactory</property>
           <property name="hibernate.transaction.manager_lookup_class">org.hibernate.transaction.WebSphereTransactionManagerLookup</property>
           <property name="hibernate.cglib.use_reflection_optimizer">false</property>
           <property name="hibernate.transaction.flush_before_completion">true</property>
           <property name="hibernate.transaction.auto_close_session">true</property>
          


          Using sigleton instance of SessionFactory!

           public void deployProcessDefinition(byte[] data) throws IntegrationException {
           pushMessage("[classe=MainWorkflow.java, method=deployProcessDefinition(zipInputStream)]");
           try {
           logger.debug("iniciando metodo: MainWorkflow.java::deployProcessDefinition(zipInputStream)");
          
           ProcessDefinition processDefinition = ProcessDefinition.parseParZipInputStream( new ZipInputStream( new ByteArrayInputStream( data ) ) );
           getJbpmSession().getGraphSession().saveProcessDefinition( processDefinition );
          
           } catch(Exception e) {
           logger.fatal(e.getMessage(), e);
           throw new IntegrationException(e);
          
           } finally {
           logger.debug("finalizando metodo: MainWorkflow.java::deployProcessDefinition(zipInputStream)");
           popMessage();
           }
          
           }
          
          


          What is wrong?

          I need to use CMT, but with hibernate3rc1, i'm using JTA, what happens if i use hibernate 3.1 with CMT ? can i do this?



          • 2. Re: (jbpm+ejb session bean) need examples on how to develop
            alal007

            any luck?
            was able to resolve your issue

            • 3. Re: (jbpm+ejb session bean) need examples on how to develop
              joshuayip

              Hello,

              Good to know that you are working on websphere. Because I am also having difficulty in finding support on this.

              I am on websphere 6.0 . Have tried running all the various db test provided by the db package? It is very useful, because you get to see plainly hibernate, jbpm, jboss on your database , and if it works correctly.

              I have managed to resolved many issues by looking at the log produced by ants, and from there, found some configuration matters required on DB2 database (page size, stmthead size) . And the message you pointed out, it maybe be too early to assume that certain component doesnt work, until you run the unit test script on the bd package. Hope this helps

              Joshua

              • 4. Re: (jbpm+ejb session bean) need examples on how to develop
                mdonato

                Hi all,

                I Solved this a long time ago, Sorry for post it too late.

                But i'll put my configuration here for knowledge:

                JBpm 3.0.1
                Hibernate 3.1
                WebSphere
                Jboss
                MssqlServer
                Oracle (soon & not tested yet)

                <!-- jdbc connection properties -->
                 <property name="hibernate.dialect">br.com.glr.jbpm.compatibility.SQLServer7Dialect</property><!-- MS SQLServer 7 -->
                 <!--property name="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</property--><!-- MS SQLServer 2000 -->
                 <!--property name="hibernate.dialect">org.hibernate.dialect.OracleDialect</property--><!-- Oracle (qualquer versao) -->
                 <!--property name="hibernate.dialect">org.hibernate.dialect.Oracle9Dialect</property--><!-- Oracle 9i/10g -->
                
                 <!-- Websphere -->
                 <property name="hibernate.connection.datasource">jdbc/dsPOPULIS</property>
                 <property name="hibernate.TransactionManagerLookup">org.hibernate.transaction.WebSphereTransactionManagerLookup</property>
                 <property name="hibernate.transaction.manager_lookup_class">org.hibernate.transaction.WebSphereTransactionManagerLookup</property>
                 <property name="hibernate.TransactionManagerLookupStrategy">org.hibernate.transaction.WebSphereTransactionManagerLookup</property>
                
                
                 <!-- jboss
                 <property name="hibernate.connection.datasource">java:jdbc/dsPOPULIS</property>
                 <property name="hibernate.TransactionManagerLookup">org.hibernate.transaction.JBossTransactionManagerLookup</property>
                 <property name="hibernate.transaction.manager_lookup_class">org.hibernate.transaction.JBossTransactionManagerLookup</property>
                 <property name="hibernate.TransactionManagerLookupStrategy">org.hibernate.transaction.JBossTransactionManagerLookup</property>
                 -->
                
                 <property name="hibernate.TransactionStrategy">org.hibernate.transaction.CMTTransactionFactory</property>
                 <property name="hibernate.transaction.factory_class">org.hibernate.transaction.CMTTransactionFactory</property>
                
                 <property name="hibernate.connection.release_mode">after_statement</property>
                 <property name="hibernate.transaction.auto_close_session">true</property>
                 <property name="hibernate.transaction.flush_before_completion">true</property>
                 <property name="hibernate.default_schema">POPULIS</property>
                


                Everything works fine!

                Thanks for replies!


                • 5. Re: (jbpm+ejb session bean) need examples on how to develop
                  heismann

                  Hibernate Sessions and Transactions are documented here http://www.hibernate.org/42.html.

                  Important to note this only applies to 3.1.x Hibernate versions.