- 浏览: 30834 次
- 性别:
- 来自: 北京
最新评论
-
diffuser:
怎么都是用junit进行测试发布的,有没有用应用程序发布运行的 ...
jBPM 4使用手记 -
diffuser:
怎么都是用junit的,有没有用程序发布运行的?
jBPM 4使用手记 -
wslfh2008:
这段时间也开始在看jbpm4,发现定义流程的时候不能使用中文。 ...
jBPM 4使用手记 -
NO1111:
为什么我下载的jbpm-4.0.0.Beta1安装程序安装完后 ...
jBPM 4使用手记 -
worldljl:
如果按照作者说的去做:“在eclipse中设置了jBPM Li ...
jBPM 4使用手记
使用了一下jBPM 4。简单测试了一个"猜点"的小应用。
先下载了jBPM 4.0 alpha1和eclipse 3.4.1。在eclipse中设置了jBPM Libarary(jbpm.jar)和jBPM_refer(lib文件夹下的所有jar包)变量。
代码结构如图1:
图1
其中Boss.java是庄家。
public class Boss { public int go(){ int go = new Random().nextInt(9); System.out.println("Boss hands with "+ go); return go; } public boolean bingle(String answer){ int parse = Integer.parseInt(answer); if (parse==go()) return true; return false; } }
go方法是震甩子,0-9点。bingle方法是返回输赢结果。
BossTest.java是测试程序。
public class BossTest extends DbTestCase { public void testProcess(){ deployJpdlResource("org/jbpm/guess.jpdl.xml"); Execution execution = executionService.startExecutionByKey("guess"); String executionId = execution.getId(); Boolean bingle = (Boolean) executionService.getVariable(executionId, "response"); if (bingle) System.out.println("you win!"); else System.out.println("you lost!"); } }
这个类的作用是调用jBPM 4来进行猜点数。
现在进行jPDL建模。图形流程见图2:
图2
流程很简单,调用一段Boss类的bingle方法的Java代码。
其中流程文件内容是:
<process xmlns="http://jbpm.org/4/jpdl" name="guess"> <start g="26,94,48,48"> <flow to="verify bingle"/> </start> <java name="verify bingle" class="org.jbpm.Boss" method="bingle" var="response" g="256,92,92,52"> <arg><string value="2"/></arg> <flow to="end"/> </java> <state name="end" g="398,94,48,48"/> </process>
这里,我们可以看出,该流程猜测庄家点数为"2"。
这样jBPM 4就能够被BossTest.java调用,并得到竞猜结果,"You win" OR "You lost"。
下一步,我们将测试使用jBPM定义Task来参与竞猜的例子。
附件是实例代码。请各位多指教,谢谢。
- guess.zip (8.9 KB)
- 下载次数: 403
评论
8 楼
diffuser
2009-07-10
怎么都是用junit进行测试发布的,有没有用应用程序发布运行的?
7 楼
diffuser
2009-07-10
怎么都是用junit的,有没有用程序发布运行的?
6 楼
wslfh2008
2009-07-07
这段时间也开始在看jbpm4,发现定义流程的时候不能使用中文。虽然一开始可以输入中文,但保存后重新打开,出现的是乱码,不知道你这边有没有遇到类似的问题。
我也遇到过,不知道是为什么,可能是他的一个BUG吧,还有就是JBPM3有.jpg的流程图片,可是4怎么得到呢?
小开ye 写道
这段时间也开始在看jbpm4,发现定义流程的时候不能使用中文。虽然一开始可以输入中文,但保存后重新打开,出现的是乱码,不知道你这边有没有遇到类似的问题。
我也遇到过,不知道是为什么,可能是他的一个BUG吧,还有就是JBPM3有.jpg的流程图片,可是4怎么得到呢?
5 楼
NO1111
2009-04-15
为什么我下载的jbpm-4.0.0.Beta1安装程序安装完后根本没有jbpm.jar? 只有jbpm-api.jar 而且里面没有org.jbpm.test包的,我看了下org.jbpm.test在jbpm-test-db.jar中,但这个包里也没有DbTestCase这个类。请问这是怎么回事呢?
4 楼
worldljl
2009-03-21
如果按照作者说的去做:“在eclipse中设置了jBPM Libarary(jbpm.jar)和jBPM_refer(lib文件夹下的所有jar包)变量。”
是不会出现异常 的。
是不会出现异常 的。
3 楼
gritlimu
2009-03-15
编辑源文件没有问题,只是图形编辑的时候不能保存成GBK格式的,自动转换成UTF-8了
2 楼
libin2722
2009-03-06
有异常,org.jbpm.JbpmException: couldn't construct new 'org.hibernate.cfg.Configuration' with args null
10:10:57,293 INF | [JbpmTestCase] === starting testBingle =============================
guess the number:
3
Boss hands with 3
you win!
Boss hands with 1
10:11:00,433 INF | [JbpmTestCase] === starting testGo =============================
10:11:00,449 INF | [JbpmTestCase] === starting testProcess =============================
10:11:00,449 FIN | [StandardTransaction] beginning StandardTransaction[22691179]
### EXCEPTION ###########################################
10:11:00,574 SEV | [DefaultCommandService] exception while executing command org.jbpm.pvm.internal.cmd.DeployCmd@f11404
org.jbpm.pvm.internal.wire.WireException: getting org.hibernate.SessionFactory previously resulted in an exception
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:393)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:331)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:706)
at org.jbpm.pvm.internal.env.BasicEnvironment.get(BasicEnvironment.java:148)
at org.jbpm.pvm.internal.env.BasicEnvironment.get(BasicEnvironment.java:139)
at org.jbpm.pvm.internal.wire.descriptor.HibernateSessionDescriptor.construct(HibernateSessionDescriptor.java:62)
at org.jbpm.pvm.internal.wire.WireContext.construct(WireContext.java:473)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:452)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:441)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:421)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:331)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:706)
at org.jbpm.pvm.internal.wire.descriptor.HibernatePvmDbSessionDescriptor.initialize(HibernatePvmDbSessionDescriptor.java:49)
at org.jbpm.pvm.internal.wire.WireContext.performInitialization(WireContext.java:537)
at org.jbpm.pvm.internal.wire.WireContext.initialize(WireContext.java:499)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:453)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:441)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:421)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:331)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:706)
at org.jbpm.pvm.internal.env.BasicEnvironment.get(BasicEnvironment.java:148)
at org.jbpm.pvm.internal.env.BasicEnvironment.get(BasicEnvironment.java:139)
at org.jbpm.pvm.internal.deploy.CheckProcessDeployer.deploy(CheckProcessDeployer.java:52)
at org.jbpm.pvm.internal.deploy.DeployerManager.deploy(DeployerManager.java:61)
at org.jbpm.pvm.internal.cmd.DeployCmd.execute(DeployCmd.java:55)
at org.jbpm.pvm.internal.cmd.DeployCmd.execute(DeployCmd.java:37)
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:40)
at org.jbpm.pvm.internal.svc.RetryInterceptor.execute(RetryInterceptor.java:52)
at org.jbpm.pvm.internal.svc.ProcessServiceImpl.deploy(ProcessServiceImpl.java:83)
at org.jbpm.pvm.internal.svc.DeploymentImpl.deploy(DeploymentImpl.java:319)
at org.jbpm.test.DbTestCase.deployJpdlResource(DbTestCase.java:111)
at org.jbpm.BossTest.testProcess(BossTest.java:31)
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:597)
at junit.framework.TestCase.runTest(TestCase.java:154)
at org.jbpm.test.JbpmTestCase.runTest(JbpmTestCase.java:69)
at junit.framework.TestCase.runBare(TestCase.java:127)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:118)
at junit.framework.TestSuite.runTest(TestSuite.java:208)
at junit.framework.TestSuite.run(TestSuite.java:203)
at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
Caused by: org.jbpm.JbpmException: couldn't construct new 'org.hibernate.cfg.Configuration' with args null
at org.jbpm.pvm.internal.util.ReflectUtil.newInstance(ReflectUtil.java:223)
at org.jbpm.pvm.internal.util.ReflectUtil.newInstance(ReflectUtil.java:192)
at org.jbpm.pvm.internal.wire.descriptor.HibernateConfigurationDescriptor.construct(HibernateConfigurationDescriptor.java:72)
at org.jbpm.pvm.internal.wire.WireContext.construct(WireContext.java:473)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:452)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:441)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:421)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:331)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:706)
at org.jbpm.pvm.internal.wire.descriptor.HibernateSessionFactoryDescriptor.construct(HibernateSessionFactoryDescriptor.java:55)
at org.jbpm.pvm.internal.wire.WireContext.construct(WireContext.java:473)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:452)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:441)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:421)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:331)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:706)
at org.jbpm.cfg.JbpmConfiguration.get(JbpmConfiguration.java:225)
at org.jbpm.test.Db.verifyClean(Db.java:139)
at org.jbpm.test.Db.verifyClean(Db.java:60)
at org.jbpm.test.DbTestCase.tearDown(DbTestCase.java:95)
at junit.framework.TestCase.runBare(TestCase.java:130)
... 12 more
Caused by: java.lang.ExceptionInInitializerError
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at org.jbpm.pvm.internal.util.ReflectUtil.newInstance(ReflectUtil.java:220)
... 32 more
Caused by: org.apache.commons.logging.LogConfigurationException: org.apache.commons.logging.LogConfigurationException: java.lang.NullPointerException (Caused by java.lang.NullPointerException) (Caused by org.apache.commons.logging.LogConfigurationException: java.lang.NullPointerException (Caused by java.lang.NullPointerException))
at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:543)
at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:235)
at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:209)
at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
at org.hibernate.cfg.Configuration.<clinit>(Configuration.java:126)
... 37 more
Caused by: org.apache.commons.logging.LogConfigurationException: java.lang.NullPointerException (Caused by java.lang.NullPointerException)
at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:397)
at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:529)
... 41 more
Caused by: java.lang.NullPointerException
at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:374)
... 42 more
### EXCEPTION ###########################################
10:11:00,574 FIN | [StandardTransaction] rolled back
org.jbpm.pvm.internal.wire.WireException: getting org.hibernate.SessionFactory previously resulted in an exception
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:393)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:331)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:706)
at org.jbpm.pvm.internal.env.BasicEnvironment.get(BasicEnvironment.java:148)
at org.jbpm.pvm.internal.env.BasicEnvironment.get(BasicEnvironment.java:139)
at org.jbpm.pvm.internal.wire.descriptor.HibernateSessionDescriptor.construct(HibernateSessionDescriptor.java:62)
at org.jbpm.pvm.internal.wire.WireContext.construct(WireContext.java:473)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:452)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:441)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:421)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:331)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:706)
at org.jbpm.pvm.internal.wire.descriptor.HibernatePvmDbSessionDescriptor.initialize(HibernatePvmDbSessionDescriptor.java:49)
at org.jbpm.pvm.internal.wire.WireContext.performInitialization(WireContext.java:537)
at org.jbpm.pvm.internal.wire.WireContext.initialize(WireContext.java:499)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:453)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:441)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:421)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:331)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:706)
at org.jbpm.pvm.internal.env.BasicEnvironment.get(BasicEnvironment.java:148)
at org.jbpm.pvm.internal.env.BasicEnvironment.get(BasicEnvironment.java:139)
at org.jbpm.pvm.internal.deploy.CheckProcessDeployer.deploy(CheckProcessDeployer.java:52)
at org.jbpm.pvm.internal.deploy.DeployerManager.deploy(DeployerManager.java:61)
at org.jbpm.pvm.internal.cmd.DeployCmd.execute(DeployCmd.java:55)
at org.jbpm.pvm.internal.cmd.DeployCmd.execute(DeployCmd.java:37)
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:40)
at org.jbpm.pvm.internal.svc.RetryInterceptor.execute(RetryInterceptor.java:52)
at org.jbpm.pvm.internal.svc.ProcessServiceImpl.deploy(ProcessServiceImpl.java:83)
at org.jbpm.pvm.internal.svc.DeploymentImpl.deploy(DeploymentImpl.java:319)
at org.jbpm.test.DbTestCase.deployJpdlResource(DbTestCase.java:111)
at org.jbpm.BossTest.testProcess(BossTest.java:31)
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:597)
at junit.framework.TestCase.runTest(TestCase.java:154)
at org.jbpm.test.JbpmTestCase.runTest(JbpmTestCase.java:69)
at junit.framework.TestCase.runBare(TestCase.java:127)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:118)
at junit.framework.TestSuite.runTest(TestSuite.java:208)
at junit.framework.TestSuite.run(TestSuite.java:203)
at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
Caused by: org.jbpm.JbpmException: couldn't construct new 'org.hibernate.cfg.Configuration' with args null
at org.jbpm.pvm.internal.util.ReflectUtil.newInstance(ReflectUtil.java:223)
at org.jbpm.pvm.internal.util.ReflectUtil.newInstance(ReflectUtil.java:192)
at org.jbpm.pvm.internal.wire.descriptor.HibernateConfigurationDescriptor.construct(HibernateConfigurationDescriptor.java:72)
at org.jbpm.pvm.internal.wire.WireContext.construct(WireContext.java:473)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:452)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:441)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:421)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:331)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:706)
at org.jbpm.pvm.internal.wire.descriptor.HibernateSessionFactoryDescriptor.construct(HibernateSessionFactoryDescriptor.java:55)
at org.jbpm.pvm.internal.wire.WireContext.construct(WireContext.java:473)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:452)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:441)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:421)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:331)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:706)
at org.jbpm.cfg.JbpmConfiguration.get(JbpmConfiguration.java:225)
at org.jbpm.test.Db.verifyClean(Db.java:139)
at org.jbpm.test.Db.verifyClean(Db.java:60)
at org.jbpm.test.DbTestCase.tearDown(DbTestCase.java:95)
at junit.framework.TestCase.runBare(TestCase.java:130)
... 12 more
Caused by: java.lang.ExceptionInInitializerError
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at org.jbpm.pvm.internal.util.ReflectUtil.newInstance(ReflectUtil.java:220)
... 32 more
Caused by: org.apache.commons.logging.LogConfigurationException: org.apache.commons.logging.LogConfigurationException: java.lang.NullPointerException (Caused by java.lang.NullPointerException) (Caused by org.apache.commons.logging.LogConfigurationException: java.lang.NullPointerException (Caused by java.lang.NullPointerException))
at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:543)
at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:235)
at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:209)
at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
at org.hibernate.cfg.Configuration.<clinit>(Configuration.java:126)
... 37 more
Caused by: org.apache.commons.logging.LogConfigurationException: java.lang.NullPointerException (Caused by java.lang.NullPointerException)
at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:397)
at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:529)
... 41 more
Caused by: java.lang.NullPointerException
at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:374)
... 42 more
10:10:57,293 INF | [JbpmTestCase] === starting testBingle =============================
guess the number:
3
Boss hands with 3
you win!
Boss hands with 1
10:11:00,433 INF | [JbpmTestCase] === starting testGo =============================
10:11:00,449 INF | [JbpmTestCase] === starting testProcess =============================
10:11:00,449 FIN | [StandardTransaction] beginning StandardTransaction[22691179]
### EXCEPTION ###########################################
10:11:00,574 SEV | [DefaultCommandService] exception while executing command org.jbpm.pvm.internal.cmd.DeployCmd@f11404
org.jbpm.pvm.internal.wire.WireException: getting org.hibernate.SessionFactory previously resulted in an exception
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:393)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:331)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:706)
at org.jbpm.pvm.internal.env.BasicEnvironment.get(BasicEnvironment.java:148)
at org.jbpm.pvm.internal.env.BasicEnvironment.get(BasicEnvironment.java:139)
at org.jbpm.pvm.internal.wire.descriptor.HibernateSessionDescriptor.construct(HibernateSessionDescriptor.java:62)
at org.jbpm.pvm.internal.wire.WireContext.construct(WireContext.java:473)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:452)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:441)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:421)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:331)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:706)
at org.jbpm.pvm.internal.wire.descriptor.HibernatePvmDbSessionDescriptor.initialize(HibernatePvmDbSessionDescriptor.java:49)
at org.jbpm.pvm.internal.wire.WireContext.performInitialization(WireContext.java:537)
at org.jbpm.pvm.internal.wire.WireContext.initialize(WireContext.java:499)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:453)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:441)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:421)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:331)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:706)
at org.jbpm.pvm.internal.env.BasicEnvironment.get(BasicEnvironment.java:148)
at org.jbpm.pvm.internal.env.BasicEnvironment.get(BasicEnvironment.java:139)
at org.jbpm.pvm.internal.deploy.CheckProcessDeployer.deploy(CheckProcessDeployer.java:52)
at org.jbpm.pvm.internal.deploy.DeployerManager.deploy(DeployerManager.java:61)
at org.jbpm.pvm.internal.cmd.DeployCmd.execute(DeployCmd.java:55)
at org.jbpm.pvm.internal.cmd.DeployCmd.execute(DeployCmd.java:37)
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:40)
at org.jbpm.pvm.internal.svc.RetryInterceptor.execute(RetryInterceptor.java:52)
at org.jbpm.pvm.internal.svc.ProcessServiceImpl.deploy(ProcessServiceImpl.java:83)
at org.jbpm.pvm.internal.svc.DeploymentImpl.deploy(DeploymentImpl.java:319)
at org.jbpm.test.DbTestCase.deployJpdlResource(DbTestCase.java:111)
at org.jbpm.BossTest.testProcess(BossTest.java:31)
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:597)
at junit.framework.TestCase.runTest(TestCase.java:154)
at org.jbpm.test.JbpmTestCase.runTest(JbpmTestCase.java:69)
at junit.framework.TestCase.runBare(TestCase.java:127)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:118)
at junit.framework.TestSuite.runTest(TestSuite.java:208)
at junit.framework.TestSuite.run(TestSuite.java:203)
at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
Caused by: org.jbpm.JbpmException: couldn't construct new 'org.hibernate.cfg.Configuration' with args null
at org.jbpm.pvm.internal.util.ReflectUtil.newInstance(ReflectUtil.java:223)
at org.jbpm.pvm.internal.util.ReflectUtil.newInstance(ReflectUtil.java:192)
at org.jbpm.pvm.internal.wire.descriptor.HibernateConfigurationDescriptor.construct(HibernateConfigurationDescriptor.java:72)
at org.jbpm.pvm.internal.wire.WireContext.construct(WireContext.java:473)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:452)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:441)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:421)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:331)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:706)
at org.jbpm.pvm.internal.wire.descriptor.HibernateSessionFactoryDescriptor.construct(HibernateSessionFactoryDescriptor.java:55)
at org.jbpm.pvm.internal.wire.WireContext.construct(WireContext.java:473)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:452)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:441)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:421)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:331)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:706)
at org.jbpm.cfg.JbpmConfiguration.get(JbpmConfiguration.java:225)
at org.jbpm.test.Db.verifyClean(Db.java:139)
at org.jbpm.test.Db.verifyClean(Db.java:60)
at org.jbpm.test.DbTestCase.tearDown(DbTestCase.java:95)
at junit.framework.TestCase.runBare(TestCase.java:130)
... 12 more
Caused by: java.lang.ExceptionInInitializerError
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at org.jbpm.pvm.internal.util.ReflectUtil.newInstance(ReflectUtil.java:220)
... 32 more
Caused by: org.apache.commons.logging.LogConfigurationException: org.apache.commons.logging.LogConfigurationException: java.lang.NullPointerException (Caused by java.lang.NullPointerException) (Caused by org.apache.commons.logging.LogConfigurationException: java.lang.NullPointerException (Caused by java.lang.NullPointerException))
at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:543)
at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:235)
at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:209)
at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
at org.hibernate.cfg.Configuration.<clinit>(Configuration.java:126)
... 37 more
Caused by: org.apache.commons.logging.LogConfigurationException: java.lang.NullPointerException (Caused by java.lang.NullPointerException)
at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:397)
at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:529)
... 41 more
Caused by: java.lang.NullPointerException
at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:374)
... 42 more
### EXCEPTION ###########################################
10:11:00,574 FIN | [StandardTransaction] rolled back
org.jbpm.pvm.internal.wire.WireException: getting org.hibernate.SessionFactory previously resulted in an exception
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:393)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:331)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:706)
at org.jbpm.pvm.internal.env.BasicEnvironment.get(BasicEnvironment.java:148)
at org.jbpm.pvm.internal.env.BasicEnvironment.get(BasicEnvironment.java:139)
at org.jbpm.pvm.internal.wire.descriptor.HibernateSessionDescriptor.construct(HibernateSessionDescriptor.java:62)
at org.jbpm.pvm.internal.wire.WireContext.construct(WireContext.java:473)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:452)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:441)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:421)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:331)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:706)
at org.jbpm.pvm.internal.wire.descriptor.HibernatePvmDbSessionDescriptor.initialize(HibernatePvmDbSessionDescriptor.java:49)
at org.jbpm.pvm.internal.wire.WireContext.performInitialization(WireContext.java:537)
at org.jbpm.pvm.internal.wire.WireContext.initialize(WireContext.java:499)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:453)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:441)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:421)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:331)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:706)
at org.jbpm.pvm.internal.env.BasicEnvironment.get(BasicEnvironment.java:148)
at org.jbpm.pvm.internal.env.BasicEnvironment.get(BasicEnvironment.java:139)
at org.jbpm.pvm.internal.deploy.CheckProcessDeployer.deploy(CheckProcessDeployer.java:52)
at org.jbpm.pvm.internal.deploy.DeployerManager.deploy(DeployerManager.java:61)
at org.jbpm.pvm.internal.cmd.DeployCmd.execute(DeployCmd.java:55)
at org.jbpm.pvm.internal.cmd.DeployCmd.execute(DeployCmd.java:37)
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:40)
at org.jbpm.pvm.internal.svc.RetryInterceptor.execute(RetryInterceptor.java:52)
at org.jbpm.pvm.internal.svc.ProcessServiceImpl.deploy(ProcessServiceImpl.java:83)
at org.jbpm.pvm.internal.svc.DeploymentImpl.deploy(DeploymentImpl.java:319)
at org.jbpm.test.DbTestCase.deployJpdlResource(DbTestCase.java:111)
at org.jbpm.BossTest.testProcess(BossTest.java:31)
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:597)
at junit.framework.TestCase.runTest(TestCase.java:154)
at org.jbpm.test.JbpmTestCase.runTest(JbpmTestCase.java:69)
at junit.framework.TestCase.runBare(TestCase.java:127)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:118)
at junit.framework.TestSuite.runTest(TestSuite.java:208)
at junit.framework.TestSuite.run(TestSuite.java:203)
at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:130)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
Caused by: org.jbpm.JbpmException: couldn't construct new 'org.hibernate.cfg.Configuration' with args null
at org.jbpm.pvm.internal.util.ReflectUtil.newInstance(ReflectUtil.java:223)
at org.jbpm.pvm.internal.util.ReflectUtil.newInstance(ReflectUtil.java:192)
at org.jbpm.pvm.internal.wire.descriptor.HibernateConfigurationDescriptor.construct(HibernateConfigurationDescriptor.java:72)
at org.jbpm.pvm.internal.wire.WireContext.construct(WireContext.java:473)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:452)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:441)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:421)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:331)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:706)
at org.jbpm.pvm.internal.wire.descriptor.HibernateSessionFactoryDescriptor.construct(HibernateSessionFactoryDescriptor.java:55)
at org.jbpm.pvm.internal.wire.WireContext.construct(WireContext.java:473)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:452)
at org.jbpm.pvm.internal.wire.WireContext.create(WireContext.java:441)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:421)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:331)
at org.jbpm.pvm.internal.wire.WireContext.get(WireContext.java:706)
at org.jbpm.cfg.JbpmConfiguration.get(JbpmConfiguration.java:225)
at org.jbpm.test.Db.verifyClean(Db.java:139)
at org.jbpm.test.Db.verifyClean(Db.java:60)
at org.jbpm.test.DbTestCase.tearDown(DbTestCase.java:95)
at junit.framework.TestCase.runBare(TestCase.java:130)
... 12 more
Caused by: java.lang.ExceptionInInitializerError
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at org.jbpm.pvm.internal.util.ReflectUtil.newInstance(ReflectUtil.java:220)
... 32 more
Caused by: org.apache.commons.logging.LogConfigurationException: org.apache.commons.logging.LogConfigurationException: java.lang.NullPointerException (Caused by java.lang.NullPointerException) (Caused by org.apache.commons.logging.LogConfigurationException: java.lang.NullPointerException (Caused by java.lang.NullPointerException))
at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:543)
at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:235)
at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:209)
at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:351)
at org.hibernate.cfg.Configuration.<clinit>(Configuration.java:126)
... 37 more
Caused by: org.apache.commons.logging.LogConfigurationException: java.lang.NullPointerException (Caused by java.lang.NullPointerException)
at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:397)
at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:529)
... 41 more
Caused by: java.lang.NullPointerException
at org.apache.commons.logging.impl.LogFactoryImpl.getLogConstructor(LogFactoryImpl.java:374)
... 42 more
1 楼
小开ye
2009-02-19
这段时间也开始在看jbpm4,发现定义流程的时候不能使用中文。虽然一开始可以输入中文,但保存后重新打开,出现的是乱码,不知道你这边有没有遇到类似的问题。
相关推荐
**JBPM4 学习使用总结** JBPM4(Java Business Process Management)是Jboss公司推出的一款开源的工作流管理系统,它提供了完整的业务流程自动化解决方案,包括流程设计、部署、执行、监控以及管理等功能。在深入...
jbpm4jbpm5是关于jbpm流程管理框架的专题,涵盖了jbpm4和jbpm5两个主要版本。jbpm是一个开源的工作流管理系统,用于帮助开发者实现业务流程自动化。以下是基于给定文件的信息,深入解析jbpm4和jbpm5的知识点: 1. *...
本指南由胡奇编写,旨在为开发者提供一个全面的参考,帮助他们快速学习和掌握使用jBPM4进行工作流应用的开发。 ### 标题知识点: - **工作流应用开发:** 工作流应用开发是指通过建立工作流模型,使用计算机程序来...
在阅读《jBPM4工作流应用开发指南.pdf》这本书时,你可以学习到如何使用jbpm4的API进行流程设计、部署和执行,以及如何进行流程实例的查询和管理。书中可能还会涉及如何处理异常、分支和合并逻辑,以及如何进行流程...
**jbPM4工作流示例jbpmDemo**是一款基于jBPM4的工作流管理系统实例,旨在帮助用户深入了解和掌握jBPM4工作流引擎的使用方法。jBPM4是一款强大的开源工作流管理系统,它提供了流程建模、执行以及监控等功能,广泛应用...
### JBPM4 表结构详解 JBPM (JBoss Business Process Management) 是一款开源的工作流管理系统,被广泛应用于业务流程管理领域。JBPM4作为其一个版本,具有丰富的...希望这些信息能帮助您更好地理解和使用JBPM4系统。
jbpm4新手教程
jBPM4使用JPA进行数据持久化,所以需要配置数据库连接。在`persistence.xml`文件中添加相应的JDBC连接信息,如数据库驱动、URL、用户名和密码。 ### 6. 编写代码实现业务逻辑 在流程定义中,每个任务节点通常对应...
3. **流程建模**:使用jBPM4的流程建模工具,如eclipse的jbpm plugin,创建请假流程模型,定义各个活动(如申请、审批等)及它们之间的流转规则。 4. **部署流程**:将建好的流程模型部署到jBPM4的工作流引擎中,使...
1. **流程定义**:jbpm4使用BPMN 2.0(Business Process Modeling Notation)标准来定义流程图,使得流程可视化且易于理解。在员工请假流程中,可能包括请假申请、部门审批、人力资源审核等环节,每个环节都可以通过...
同时,还需要配置数据库连接,因为jBPM4使用数据库来存储流程实例和相关数据。可以使用H2内嵌式数据库,或者根据项目需求选择其他支持的数据库如MySQL、Oracle等。 **第三章 流程设计器** jBPM4提供了一个直观的...
**JBPM4 开发文档详解** JBPM4(Java Business Process Management 4)是一个轻量级的开源工作流管理系统,基于J2EE架构,旨在帮助开发者实现复杂的业务流程自动化。该项目于2004年10月18日发布2.0版本,并随后成为...
2. **流程定义(Process Definition)**:jbpm4使用XML文件(通常为*.bpmn)来定义流程,这些文件包含了流程的所有节点、连接线、事件、任务等元素。在实例源码中,你可以看到如何创建和配置这些流程定义。 3. **...
JBPM4 使用小结 JBPM4 是 JBoss 开发的 Java 工作流引擎,它提供了可视化的流程设计界面和基于 Hibernate 的持久层框架。下面是对 JBPM4 的主要 API 介绍和使用。 ProcessEngine ProcessEngine 是 JBPM4 的流程...
3. **示例代码(.java)**:展示如何使用jbpm4 API来启动流程实例、查询任务、完成任务等操作。 4. **数据库脚本(.sql)**:用于创建jbpm4所需的数据库表结构。 5. **配置文件(如jbpm.cfg.xml)**:定义jbpm4的...
【JBPM4 Java源代码分包详解】 JBPM4是一个流行的开源工作流管理系统,它提供了一整套用于设计、执行和管理业务流程的工具。在深入研究JBPM4的源代码时,我们可以从其包结构中了解到框架的核心功能和设计理念。 1....
【jbpm4web - JBPM4的Web版Demo详解】 JBPM4是一个开源的工作流管理系统,它提供了强大的业务流程管理(BPM)功能,包括流程设计、执行、监控和优化。"jbpm4web"是基于JBPM4开发的一个Web版本的示例项目,旨在帮助...
jbpm4支持导出流程定义为BPMN(Business Process Modeling Notation)标准格式,然后使用工具如jBPM Designer或者在线工具将其转化为图形化展示,方便开发者和业务人员理解和修改流程。按照该文件的指示,可以更好地...