3 Replies Latest reply on Apr 22, 2010 5:09 AM by Maurice de Chateau

    Error while deploying the JBPM project from eclipse

    Sameer Tiwari Newbie

      Hi All,


      I am new to JBPM trying to create a process using JBPM.


      I have installed Jboss -4.2.3 GA and also integrated the jbpm-3.2.6.SP1.jar.


      I also have the Mysql databse setup done for jbpm. I have created a new jbpm process project in eclipse. When i click on the deployemnt tab of the


      processdefination.xml file and click on "Deploy Web archive" it gives me an error unknown exception in eclipse and on the Jboss server console i get


      error for can not parse xml "hibernate.identity.hbm.xml".


      Any help if i ma doing any thing wrong for the deployement.


      Also is there a document which i can refer run my first hello process.


      Thanks and Regards,


        • 1. Re: Error while deploying the JBPM project from eclipse
          Maurice de Chateau Newbie

          Hi Sameer,


          From your description I cannot see exactly how you integrated jBPM with your JBoss AS server; I'm guessing that you followed the installation script that adds the /jbpm directory to the /deploy directory of your server?


          Fact is that this "hibernate.identity.hbm.xml" file is inside the identity.jar file (which resides in the /deploy/jbpm/jbpm-service.sar directory if you followed said script), so this may be missing or corrupt.


          If you are starting out with jBPM, chances are that you're not using the functionality in the identity module yet. If that is the case, you can remove the dependency on that module by commenting out the following lines from jBPM's Hibernate configuration (hibernate.cfg.xml file):

              <mapping resource="hibernate.extra.hbm.xml" />
              <mapping resource="hibernate.identity.hbm.xml" />

          That way this particular file will not be read and you should be able to proceed with your deployment.






          1 of 1 people found this helpful
          • 2. Re: Error while deploying the JBPM project from eclipse
            Sameer Tiwari Newbie

            Hi Maurice,


            Thanks for your response ihave been waiting for this since long time. The error is gone but seems o be givin me some other error now.

            I think i did not mak my self clear in my question what i have done.


            Step 1 : I have taken the Jboss 4.2.4 GA server and set my JBOSS_HOME in the environment variable

            Step 2 : Then install the jbpm-2.3.5 sp1.jar which has created aa jbpm folder in the deploy folder of my JBoss server.

            Step 3 : Then i set my JBPM_Home as the one which is created while installing the jar file in step2.

            Step 4: In my eclipse i have set my runtime as the jbpm_home.

            Step 5: I create a new JBPM process project and try to deploy the archive. It gives me an error "an unexpected error occured" and on the Jboss console its giving me follwing exception.


            java.lang.IncompatibleClassChangeError: class org.jbpm.job.ExecuteActionJob has interface org.jbpm.job.Job as super class
                    at java.lang.ClassLoader.defineClass1(Native Method)
                    at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
                    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
                    at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
                    at java.net.URLClassLoader.access$000(URLClassLoader.java:56)
                    at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
                    at java.security.AccessController.doPrivileged(Native Method)
                    at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
                    at org.jboss.mx.loading.RepositoryClassLoader.findClassLocally(RepositoryClassLoader.java:690)
                    at org.jboss.mx.loading.RepositoryClassLoader.findClass(RepositoryClassLoader.java:670)
                    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
                    at org.jboss.mx.loading.RepositoryClassLoader.loadClassLocally(RepositoryClassLoader.java:200)
                    at org.jboss.mx.loading.ClassLoadingTask$ThreadTask.run(ClassLoadingTask.java:131)
                    at org.jboss.mx.loading.LoadMgr3.nextTask(LoadMgr3.java:399)
                    at org.jboss.mx.loading.RepositoryClassLoader.loadClassImpl(RepositoryClassLoader.java:527)
                    at org.jboss.mx.loading.RepositoryClassLoader.loadClass(RepositoryClassLoader.java:415)
                    at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
                    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
                    at java.lang.Class.getDeclaredMethods0(Native Method)
                    at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
                    at java.lang.Class.getDeclaredMethods(Class.java:1791)
                    at org.hibernate.property.BasicPropertyAccessor.getterMethod(BasicPropertyAccessor.java:317)
                    at org.hibernate.property.BasicPropertyAccessor.getGetterOrNull(BasicPropertyAccessor.java:297)
                    at org.hibernate.property.BasicPropertyAccessor.getGetterOrNull(BasicPropertyAccessor.java:304)
                    at org.hibernate.property.BasicPropertyAccessor.createGetter(BasicPropertyAccessor.java:280)
                    at org.hibernate.property.BasicPropertyAccessor.getGetter(BasicPropertyAccessor.java:275)
                    at org.hibernate.util.ReflectHelper.getter(ReflectHelper.java:80)
                    at org.hibernate.util.ReflectHelper.reflectedPropertyClass(ReflectHelper.java:71)
                    at org.hibernate.mapping.SimpleValue.setTypeUsingReflection(SimpleValue.java:276)
                    at org.hibernate.cfg.HbmBinder.bindSimpleId(HbmBinder.java:401)
                    at org.hibernate.cfg.HbmBinder.bindRootPersistentClassCommonValues(HbmBinder.java:334)
                    at org.hibernate.cfg.HbmBinder.bindRootClass(HbmBinder.java:273)
                    at org.hibernate.cfg.HbmBinder.bindRoot(HbmBinder.java:144)
                    at org.hibernate.cfg.Configuration.add(Configuration.java:669)
                    at org.hibernate.cfg.Configuration.addInputStream(Configuration.java:504)
                    at org.hibernate.cfg.Configuration.addResource(Configuration.java:566)
                    at org.hibernate.cfg.Configuration.parseMappingElement(Configuration.java:1587)
                    at org.hibernate.cfg.Configuration.parseSessionFactory(Configuration.java:1555)
                    at org.hibernate.cfg.Configuration.doConfigure(Configuration.java:1534)



            Please let e know if i am doing the integration of JBPM and Jboss correctly. Or shouId i use the jbpm suite which i have downloaded from source forge.net site.


            Thanks in advance


            • 3. Re: Error while deploying the JBPM project from eclipse
              Maurice de Chateau Newbie

              Hi Sameer,


              If you're getting an IncompatibleClassChangeError, something is seriously wrong! I never experienced this with jBPM myself so far, and looking up what it could mean turned up the following description:


              "This situation occurs when the current definition  of the referenced class is incompatible with the definition of the class   that was found when the referring class was compiled. For example, say  class A refers to a method  in class B. Then, after class A is compiled, the method is  removed from class B. When  class A is loaded, the run-time  system discovers that the method in class B no longer exists and throws an error."


              To me, this says that there may be two different versions of jBPM in your environment (with at least incompatible versions of the class    org.jbpm.job.ExecuteActionJob).


              Could it be that there is a different version of jBPM either referenced from within Eclipse or in the deploy or lib directories of you JBoss AS?

              1 of 1 people found this helpful