10 Replies Latest reply on Nov 15, 2007 1:33 AM by satyagkk

    jBPM 3.2.1 and App Server (AS) 4.2 - Web Console

    burrsutter

      Downloaded the "jbpm-jpdl-suite-3.2.1" - run the server and the console from the bundled version of AS. No problem there.

      Reviewed the information at this link:
      http://wiki.jboss.org/wiki/Wiki.jsp?page=DeployJbpm3.2WebAppUnderJBoss4.2.x
      Dropped the modified WAR (tried zipped and unzipped) into my AS deploy directory.

      The result was a missing class file called ConcurrentMap. I tried both the EAR and WAR (the WAR is in 2 locations in the suite, I tried both)

      Found the JAR called jboss-backport-concurrent.jar which I pulled out of the "suite" and dropped into my AS 4.2 server\lib. Got around that problem.

      Now it seems to be having problems with finding/creating its schema. I've created it manually but getting different errors.

      In any case, anyone else have more success with using jBPM 3.2.1's new webconsole and a AS 4.2.0.GA instance?

      Thanks,
      Burr


        • 1. Re: jBPM 3.2.1 and App Server (AS) 4.2 - Web Console
          kukeltje

          Burr,

          jBPM does not create the schema's runtime (yet) there is a jira issue for this. So it is more of a problem of finding them. Do you use the same db as with the starterkit?

          And with regard to 'getting different errors', please post them so I can try to help finding the cause.

          • 2. Re: jBPM 3.2.1 and App Server (AS) 4.2 - Web Console
            burrsutter

            I'll try to clearly specify my steps for the next person who will wish to attempt this trick. My ultimate goal is to make the console with with the jBPM embedded in the ESB 4.2 but for now I'm just shooting for AS 4.2.

            - Plain vanilla AS 4.2 instance (no Messaging, no ESB, etc)
            - jBPM 3.2.1 jPDL Suite download

            1) Copied jbpm-console.war from the jbpm-jpdl-3.2.1\server\server\jbpm\deploy directory to my AS 4.2 default\deploy directory
            2) removed the JSF & EI jars from the WAR's WEB-INF\lib
            3) Copied jboss-backport-concurrent.jar from the jbpm-jpdl-3.2.1\server\server\jbpm\lib to my AS 4.2 server\default\lib directory
            4) Copied jbpmDB.* from jbpm-jpdl-3.2.1\server\server\jbpm\data\hypersonic to
            AS 4.2 server\default\data\hypersonic directory
            Note: also tried building the schema by using the sql scripts found in jbpm-jpdl-3.2.1\db
            5) Copied jbpm-ds.xml from jbpm-jpdl-3.2.1\server\server\jbpm\deploy to
            AS 4.2 server\default\deploy
            6) Start the AS instance via "run" from the bin directory.
            7) Dig through the server.log to find:

            ERROR [org.hibernate.proxy.pojo.BasicLazyInitializer] Javassist Enhancement failed: org.jbpm.taskmgmt.log.TaskAssignLog
            java.lang.RuntimeException: java.lang.IllegalArgumentException


            So I need to modify the Hibernate related items in the jbpm-console.war it seems.

            Or perhaps this is just going down the wrong path all together?

            • 3. Re: jBPM 3.2.1 and App Server (AS) 4.2 - Web Console
              burrsutter

              I decided to "cheat" and went back to CVS. The build script for the console makes a 4.2 compatible WAR where the primary differences seem to the following:

              jsf-impl-14.jar (gone)
              jsf-api-14.jar (gone)
              el-ri.jar (gone)
              el-api.jar (gone)
              javassist.jar (gone)
              gravel-14.jar is now gravel.jar

              So, that tells me this information is not completely accurate:
              http://wiki.jboss.org/wiki/Wiki.jsp?page=DeployJbpm3.2WebAppUnderJBoss4.2.x
              I suspect this was accurate for 3.2.0 but I can't verify that at this moment.

              Another tip for anyone trying this at home:
              Modify your AS login-config.xml to include the following -

               <application-policy name = "jbpm">
               <authentication>
               <login-module code="org.jboss.security.auth.spi.DatabaseServerLoginModule"
               flag="required">
               <module-option name="dsJndiName">java:/JbpmDS</module-option>
               <module-option name="principalsQuery">
               SELECT PASSWORD_ FROM JBPM_ID_USER WHERE NAME_=?
               </module-option>
               <module-option name="rolesQuery">
               SELECT g.NAME_ ,'Roles'
               FROM JBPM_ID_USER u,
               JBPM_ID_MEMBERSHIP m,
               JBPM_ID_GROUP g
               WHERE g.TYPE_='security-role'
               AND m.GROUP_ = g.ID_
               AND m.USER_ = u.ID_
               AND u.NAME_=?
               </module-option>
               </login-module>
               </authentication>
               </application-policy>
              
              


              But the results of my adventure basically show me that I need to go to CVS, build the console and use the 4.2 version of jbpm-console.war.
              I've found 3 copies of jbpm-console.war in the jbpm-jpdl-suite-3.2.1 download. All have the gravel-14.jar which seems to be a problem.
              I'm guessing this is related to Java version number and I'm running on JDK 1.5.





              • 4. Re: jBPM 3.2.1 and App Server (AS) 4.2 - Web Console
                kukeltje

                Bur, interesting topic, I'll try to verify this tonight (CET) with a fresh 4.2 download and the 3.2.1 and 3.2-cvshead

                • 5. Re: jBPM 3.2.1 and App Server (AS) 4.2 - Web Console
                  deadrow

                  I am getting the same error... any clue?

                  • 6. Re: jBPM 3.2.1 and App Server (AS) 4.2 - Web Console
                    kukeltje

                    sorry, I was not able to give this a try

                    • 7. Re: jBPM 3.2.1 and App Server (AS) 4.2 - Web Console
                      burrsutter

                      If you don't wish to "build from source", I would suggest another trick (though untested). If you follow all the various steps outlined in this thread you'll note that I believe the problem is finally with gravel14.jar. If you go to jboss.org you can download gravel by itself and replace gravel14.jar with gravel.jar which I believe to be JDK 5 friendly.

                      Burr

                      • 8. Re: jBPM 3.2.1 and App Server (AS) 4.2 - Web Console
                        mputz

                        @burr, just replacing gravel14.jar with gravel.jar isn't enough, it's also jbpm4jsf-14.jar that has to be replaced with jbpm4jsf.jar IMO

                        I'll do some more testing and put it up on a wiki when I'm through.

                        Cheers,
                        Martin

                        • 9. Re: jBPM 3.2.1 and App Server (AS) 4.2 - Web Console
                          mputz

                          FYI, I have updated http://wiki.jboss.org/wiki/Wiki.jsp?page=DeployJbpm3.2WebAppUnderJBoss4.2.x to include some information that apply to deploying jBPM 3.2.1 on JBoss 4.2.x.

                          • 10. while running jbpm-console example im getting below mentione
                            satyagkk

                            ERROR [JDBCExceptionReporter] Table not found in statement [select top ? job0_.ID_ as ID1_26_, job0_.VERSION_ as VERSION3_26_, job0_.
                            ERROR [JobSession] org.hibernate.exception.SQLGrammarException: could not execute query
                            ERROR [JobExecutorThread] exception in job executor thread. waiting 5000 milliseconds
                            mException: couldn't get acquirable jobs
                            rg.jbpm.db.JobSession.getFirstAcquirableJob(JobSession.java:44)
                            rg.jbpm.job.executor.JobExecutorThread.acquireJobs(JobExecutorThread.java:111)
                            rg.jbpm.job.executor.JobExecutorThread.run(JobExecutorThread.java:56)
                            rg.hibernate.exception.SQLGrammarException: could not execute query
                            rg.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:67)
                            rg.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
                            rg.hibernate.loader.Loader.doList(Loader.java:2223)
                            rg.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2104)
                            rg.hibernate.loader.Loader.list(Loader.java:2099)
                            rg.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:378)
                            rg.hibernate.hql.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:338)
                            rg.hibernate.engine.query.HQLQueryPlan.performList(HQLQueryPlan.java:172)
                            rg.hibernate.impl.SessionImpl.list(SessionImpl.java:1121)
                            rg.hibernate.impl.QueryImpl.list(QueryImpl.java:79)
                            rg.hibernate.impl.AbstractQueryImpl.uniqueResult(AbstractQueryImpl.java:811)
                            rg.jbpm.db.JobSession.getFirstAcquirableJob(JobSession.java:40)
                            2 more