3 Replies Latest reply on Aug 11, 2009 5:18 AM by feichtegger

    Question&Problem for Demo on Spring Integration with jBPM4!

      Thanks for your demo as follow link. http://www.inze.be/andries/2009/05/16/demo-on-spring-integration-with-jbpm4/

      I have faced the problem in using it.

      Almost all of it are working fine.
      But when i try to undeploy definition by repositoryService.deleteDeploymentCascade(deploymentId) method,
      Bellow error is caused.
      I need your advice.
      Your help will be appreciate and helpfull me.

      Thanks,
      Kwangcheol

      10:01:53,371 FIN | [DeleteDeploymentCmd] deleting deployment 19
      Hibernate: select deployment0_.DBID_ as DBID1_19_0_, deployment0_.NAME_ as NAME2_19_0_, deployment0_.TIMESTAMP_ as TIMESTAMP3_19_0_, deployment0_.STATE_ as STATE4_19_0_ from JBPM4_DEPLOYMENT deployment0_ where deployment0_.DBID_=?
      Hibernate: select resources0_.DEPLOYMENT_ as DEPLOYMENT4_1_, resources0_.DBID_ as DBID1_1_, resources0_.NAME_ as NAME5_1_, resources0_.DBID_ as DBID1_23_0_, resources0_.DBVERSION_ as DBVERSION2_23_0_, resources0_.BLOB_VALUE_ as BLOB3_23_0_ from JBPM4_LOB resources0_ where resources0_.DEPLOYMENT_=?
      Hibernate: select objectprop0_.DEPLOYMENT_ as DEPLOYMENT2_1_, objectprop0_.DBID_ as DBID1_1_, objectprop0_.DBID_ as DBID1_20_0_, objectprop0_.DEPLOYMENT_ as DEPLOYMENT2_20_0_, objectprop0_.OBJNAME_ as OBJNAME3_20_0_, objectprop0_.KEY_ as KEY4_20_0_, objectprop0_.STRINGVAL_ as STRINGVAL5_20_0_, objectprop0_.LONGVAL_ as LONGVAL6_20_0_ from JBPM4_DEPLOYPROP objectprop0_ where objectprop0_.DEPLOYMENT_=?
      ### EXCEPTION ###########################################
      10:01:53,387 INF | [DefaultCommandService] exception while executing command org.jbpm.pvm.internal.cmd.DeleteDeploymentCmd@a37c6a
      java.lang.NullPointerException
      at java.util.Hashtable.put(Hashtable.java:396)
      at org.jbpm.pvm.internal.repository.RepositoryCacheImpl.set(RepositoryCacheImpl.java:45)
      at org.jbpm.pvm.internal.cmd.DeleteDeploymentCmd.execute(DeleteDeploymentCmd.java:92)
      at org.jbpm.pvm.internal.svc.DefaultCommandService.execute(DefaultCommandService.java:42)
      at org.jbpm.pvm.internal.tx.StandardTransactionInterceptor.execute(StandardTransactionInterceptor.java:54)
      at org.jbpm.pvm.internal.svc.EnvironmentInterceptor.execute(EnvironmentInterceptor.java:54)
      at org.jbpm.pvm.internal.svc.RetryInterceptor.execute(RetryInterceptor.java:55)
      at org.jbpm.pvm.internal.repository.RepositoryServiceImpl.deleteDeployment(RepositoryServiceImpl.java:66)
      at com.tfsm.b3mb.bpm.business.UndeployServiceImpl.deleteDeployment(UndeployServiceImpl.java:30)
      at com.tfsm.b3mb.bpm.business.test.UndeployServiceTest.testDeleteDeployment(UndeployServiceTest.java:97)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:585)
      at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
      at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
      at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
      at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
      at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
      at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
      at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:73)
      at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:46)
      at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:180)
      at org.junit.runners.ParentRunner.access$000(ParentRunner.java:41)
      at org.junit.runners.ParentRunner$1.evaluate(ParentRunner.java:173)
      at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
      at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
      at org.junit.runners.ParentRunner.run(ParentRunner.java:220)
      at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:46)
      at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
      at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
      at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
      at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
      at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
      ### EXCEPTION ###########################################


        • 1. Re: Question&Problem for Demo on Spring Integration with jBP
          kukeltje

          this happens when your process has already ended

          • 2. Re: Question&Problem for Demo on Spring Integration with jBP

            Thanks for your quick answer.
            What does that mean?
            Undeploy method with jBPM Testcase is working fine.
            But after integration with spring, it cause the error.
            How can i solve this problem?
            Could you explain solution with detail description?

            Thanks

            • 3. Re: Question&Problem for Demo on Spring Integration with jBP
              feichtegger

              I have a similar problem.

              I configured hibernate using a properties-file declared as spring-bean named "propertiesBean". This bean will be referenced at the hibernate session factory bean.

              jBPM4 created a SpringContext and uses it for auto-wiring. Unfortunately the propertiesBean (java.util.Hashtable) will be recognized as suitable for RepositoryCacheImpl.deployments field (java.util.Map) and will be assigned.

              When I tried to remove the deployment, the NullPointerException occured due to RepositryCacheImpl.deployments.put(deploymentId, null). This is OK for java.util.HashMap (type before auto-wire) but not for java.util.Hashtable.

              As workaround i just defined a second "helperPropertiesBean" to suppress auto-wiring.

              Hope that helps.

              kind regards
              Michael