12 Replies Latest reply on Dec 22, 2011 2:22 PM by tsurdilovic

    process definition load timeout error in jbpm console - resolved in 5.2 release ?

    anand.awasthi

      Hi folks,

       

      i was reading the release notes for JBPM 5.2. Regarding console it says following:

       

      jBPM console

       

      • updated to latest version of the JBoss BPM console 
      • console synchronizes with the process definitions (and other assets) from all packages in the Guvnor repository
         
      • updated BIRT reporting to latest version

       

       

      With JBPM 5.1 conosle, I was running into problems where console was timing out when trying to load process definitions from local file system. Someone pointed out that as part of 5.2 release, console was gonna have time out property that we could set and using that we can avoid the timeout error.

       

      I wanted to confirm if that fix is available in 5.2 release. Can someone please confirm.

       

       

      Thanks

      Anand

        • 1. Re: process definition load timeout error in jbpm console - resolved in 5.2 release ?
          tsurdilovic

          Hi Anand, in jBPM 5.2 the timeout on loading processes should have been removed, can you please test and let us know if you are still running into this issue?

           

          Thanks.

          • 2. Re: process definition load timeout error in jbpm console - resolved in 5.2 release ?
            anand.awasthi

            Great. I will test and let you know.

             

            BTW, I am not seeing the report engine working in 5.2 Console

             

            . I have installed latest birt runtime in

             

             

            D:\birt-runtime-3_7_0\birt\ReportEngine

             

            and i am pointing my server to above location but when i try to load the templates, I keep getting following error:

             

             

              

            Reporting Engine does not seem to be running. Please make sure it is running before creating reports.
            Consult the jBPM Installer chapter in the documentation to learn how to set up the Reporting Engine.

            ·        URL: 'http://localhost:9080/gwt-console-server/rs/report/config'

            ·        Action: 'org.jboss.bpm.console.client.report.UpdateReportConfigAction'

            ·        Exception: 'class com.google.gwt.http.client.RequestException'

             

            Has configuration changed in 5.2 as to where report engine needs to be installed for console reports api to pick it up ?

             

            i was seeing that 5.2 console uses report core 1.4.2 apis , where can i find the source code for those apis so that i can debug the problem ?

             

            thanks a bunch.

             

             

             

             

             

             

             

             

             

             

             

             

            • 3. Re: process definition load timeout error in jbpm console - resolved in 5.2 release ?
              tsurdilovic

              Birt 3.7 is a little different in that you no longer need any directories or jars ourside of the war. Please take a look at the jbpm-installer build.xml to see how it sets it up for AS5 and AS7 ( https://github.com/droolsjbpm/jbpm/blob/master/jbpm-installer/build.xml - for AS7 specifically: https://github.com/droolsjbpm/jbpm/blob/master/jbpm-installer/build.xml#L410 ).

              If you are using the jbpm installer the birt setup is all done for you.

               

              Hope this helps.

              • 4. Re: process definition load timeout error in jbpm console - resolved in 5.2 release ?
                anand.awasthi

                Thanks, i will check build script but I am setting up console on WebSphere 7.

                • 5. Re: process definition load timeout error in jbpm console - resolved in 5.2 release ?
                  tsurdilovic

                  OK. You would just have to follow what the build script does, and set up the birt reporting yourself (by unzipping your war, adding the birt jars to the needed location, then zipping it up again). Hope this helps.

                  • 6. Re: process definition load timeout error in jbpm console - resolved in 5.2 release ?
                    anand.awasthi

                    I am loading process defitions from loca files system instead console,

                     

                    and i am getting following error when console builds knowledgebase

                     

                     

                    2011-12-20 17:05:39,321 WARN  [WebContainer : 3] - Participating in existing JTA transaction, but no JTA TransactionManager or TransactionSychronizationRegistry available:

                    2011-12-20 17:05:39,598 ERROR [WebContainer : 3] - Could not commit session

                    1. java.lang.RuntimeException: Unable to load session snapshot

                                    at org.drools.persistence.SessionMarshallingHelper.loadSnapshot(SessionMarshallingHelper.java:96)

                                    at org.drools.persistence.SingleSessionCommandService.initKsession(SingleSessionCommandService.java:238)

                                    at org.drools.persistence.SingleSessionCommandService.<init>(SingleSessionCommandService.java:191)

                                    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

                                    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:56)

                                    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:39)

                                    at java.lang.reflect.Constructor.newInstance(Constructor.java:527)

                                    at org.drools.persistence.jpa.KnowledgeStoreServiceImpl.buildCommandService(KnowledgeStoreServiceImpl.java:101)

                                    at org.drools.persistence.jpa.KnowledgeStoreServiceImpl.loadStatefulKnowledgeSession(KnowledgeStoreServiceImpl.java:84)

                                    at org.drools.persistence.jpa.JPAKnowledgeService.loadStatefulKnowledgeSession(JPAKnowledgeService.java:131)

                                    at org.jbpm.integration.console.CommandDelegate.newStatefulKnowledgeSession(CommandDelegate.java:164)

                                    at org.jbpm.integration.console.CommandDelegate.getSession(CommandDelegate.java:252)

                                    at org.jbpm.integration.console.CommandDelegate.<init>(CommandDelegate.java:92)

                                    at org.jbpm.integration.console.ProcessManagement.<init>(ProcessManagement.java:35)

                                    at org.jbpm.integration.console.ManagementFactory.createProcessManagement(ManagementFactory.java:22)

                                    at org.jbpm.integration.console.ManagementFactory.createProcessManagement(ManagementFactory.java:19)

                                    at org.jboss.bpm.console.server.ProcessMgmtFacade.getProcessManagement(ProcessMgmtFacade.java:86)

                                    at org.jboss.bpm.console.server.ProcessMgmtFacade.getDefinitionsJSON(ProcessMgmtFacade.java:122)

                     

                     

                    I have made not made any changes to persistence.xml that came with installer except datasource and transaction manager for Websphere, here is what my persistence.xml looks like:

                     

                     

                    <persistence-unit name="org.jbpm.persistence.jpa" transaction-type="JTA">

                    <provider>org.hibernate.ejb.HibernatePersistence</provider>

                    <jta-data-source>jdbc/JBPM</jta-data-source>

                    <mapping-file>META-INF/JBPMorm.xml</mapping-file>

                    <class>org.jbpm.persistence.processinstance.ProcessInstanceInfo</class>

                    <class>org.drools.persistence.info.SessionInfo</class>

                    <class>org.drools.persistence.info.WorkItemInfo</class>

                    <properties>

                    <property name="hibernate.dialect" value="org.hibernate.dialect.DB2Dialect"/>

                    <property name="hibernate.max_fetch_depth" value="3"/>

                    <property name="hibernate.hbm2ddl.auto" value="update" />

                    <property name="hibernate.show_sql" value="false" />

                    <property name="hibernate.transaction.manager_lookup_class"

                    value="org.hibernate.transaction.WebSphereExtendedJTATransactionLookup" />

                    </properties>

                    </persistence-unit>

                    please let me know what am i missing here ?

                    thanks

                    • 7. Re: process definition load timeout error in jbpm console - resolved in 5.2 release ?
                      swiderski.maciej

                      I believe you need to insert TransactionManager into Environment prior to loading the session.

                       

                      InitialContext initialContext = new InitialContext();
                      environment.set(EnvironmentName.TRANSACTION_MANAGER, initialContext.lookup("java:/TransactionManager"));
                      

                       

                      HTH

                      • 8. Re: process definition load timeout error in jbpm console - resolved in 5.2 release ?
                        anand.awasthi

                        Thanks for reply, but shouldn't this thing work right of the box. I am just trying to deploy the console that I downloaded as part of installer 5.2.  The only difference is that I am doing this deployment on Websphere 7.

                         

                        I have already setup console successfully for JBPM 5.1 on Websphere 7. Has anything changed between 5.1 and 5.2 ?

                         

                        thanks

                        • 9. Re: process definition load timeout error in jbpm console - resolved in 5.2 release ?
                          tsurdilovic

                          >> Has anything changed between 5.1 and 5.2 ? <<

                          Nah we just changed the version number

                           

                          Maybe this will help: http://kverlaen.blogspot.com/2011/12/jbpm-52-released.html

                          • 10. Re: process definition load timeout error in jbpm console - resolved in 5.2 release ?
                            anand.awasthi

                            Thanks Tihomir,

                             

                            I should have been more specific. . You guys are fantastic. There are lots of new features in 5.2 that my fellow colleagues are really excited specially around human task apis.

                             

                            in my last post, I meant how the console APIs (CommandDelegate specifically)  loads knowledgesession - has that changed from 5.1 to 5.2 I am looking at the source code and does not look like.

                             

                            I will keep chugging along and will keep group posted on findings.

                             

                            thanks again.

                            • 11. Re: process definition load timeout error in jbpm console - resolved in 5.2 release ?
                              anand.awasthi

                              just to add to my post regarding issues with loading process definition, I am  loading the process files from local file system instead of Guyvonr. I have looked at CommandDelegate class and its seems to support both loca files and Guvnor. However 5.2 Release notes mention only synchronization with Guvnor. Just wondering if 5.2 supports loading process definitions from local file system or not.

                               

                              Can someone please shed some light on this.

                               

                               

                              thanks a lot

                              Anand

                              • 12. Re: process definition load timeout error in jbpm console - resolved in 5.2 release ?
                                tsurdilovic

                                Yes, file system lookup is still supported. The location of where console tries to find process assets that are on the file system is governd by the value of the jbpm.console.directory property in jbpm.console.properties.