我已按照此链接https://apurvasingh67.wordpress.com/2014/03/03/how-to-install-jbpm6-on-中提供的步骤在 tomcat 8 + Bitronix 事务管理器 + Oracle 11G 上成功配置了 jBPM 6.5 tomcat7-x/
此外,我设法使用脚本和用户任务创建了一个示例业务流程。
现在,当我尝试声明并完成用户任务时,我收到了空指针异常。
任何人都可以对此有所了解。
2017-03-17 16:22:25 WARN http-apr-9012-exec-10 bitronix.tm.twopc.Preparer - executing transaction with 0 enlisted resource
2017-03-17 11:01:47 WARN http-apr-9012-exec-4 org.drools.persistence.SingleSessionCommandService - Could not commit session
java.lang.NullPointerException
at java.io.ByteArrayInputStream.<init>(ByteArrayInputStream.java:106)
at org.drools.persistence.info.WorkItemInfo.getWorkItem(WorkItemInfo.java:116)
at org.drools.persistence.jpa.processinstance.JPAWorkItemManager.internalGetWorkItem(JPAWorkItemManager.java:213)
at org.drools.persistence.jpa.processinstance.JPAWorkItemManager.completeWorkItem(JPAWorkItemManager.java:141)
at org.drools.core.command.runtime.process.CompleteWorkItemCommand.execute(CompleteWorkItemCommand.java:75)
at org.drools.core.command.runtime.process.CompleteWorkItemCommand.execute(CompleteWorkItemCommand.java:35)
at org.drools.core.command.impl.DefaultCommandService.execute(DefaultCommandService.java:36)
at org.drools.core.command.impl.AbstractInterceptor.executeNext(AbstractInterceptor.java:41)
at org.drools.persistence.SingleSessionCommandService$TransactionInterceptor.execute(SingleSessionCommandService.java:604)
at org.drools.core.command.impl.AbstractInterceptor.executeNext(AbstractInterceptor.java:41)
at org.drools.persistence.jpa.OptimisticLockRetryInterceptor.execute(OptimisticLockRetryInterceptor.java:82)
at org.drools.core.command.impl.AbstractInterceptor.executeNext(AbstractInterceptor.java:41)
at org.drools.persistence.jta.TransactionLockInterceptor.execute(TransactionLockInterceptor.java:73)
at org.drools.persistence.SingleSessionCommandService.execute(SingleSessionCommandService.java:397)
at org.drools.core.command.impl.CommandBasedStatefulKnowledgeSession$1.completeWorkItem(CommandBasedStatefulKnowledgeSession.java:166)
at org.jbpm.services.task.wih.ExternalTaskEventListener.processTaskState(ExternalTaskEventListener.java:61)
at org.jbpm.services.task.wih.ExternalTaskEventListener.afterTaskCompletedEvent(ExternalTaskEventListener.java:107)
at org.jbpm.services.task.events.TaskEventSupport.fireAfterTaskCompleted(TaskEventSupport.java:251)
at org.jbpm.services.task.internals.lifecycle.MVELLifeCycleManager.taskOperation(MVELLifeCycleManager.java:386)
at org.jbpm.services.task.impl.TaskInstanceServiceImpl.complete(TaskInstanceServiceImpl.java:188)
at org.jbpm.services.task.commands.CompleteTaskCommand.execute(CompleteTaskCommand.java:79)
at org.jbpm.services.task.commands.CompleteTaskCommand.execute(CompleteTaskCommand.java:40)
at org.jbpm.services.task.commands.CompositeCommand.execute(CompositeCommand.java:147)
at org.jbpm.services.task.commands.TaskCommandExecutorImpl$SelfExecutionCommandService.execute(TaskCommandExecutorImpl.java:65)
at org.drools.core.command.impl.AbstractInterceptor.executeNext(AbstractInterceptor.java:41)
at org.jbpm.services.task.persistence.TaskTransactionInterceptor.execute(TaskTransactionInterceptor.java:69)
at org.drools.core.command.impl.AbstractInterceptor.executeNext(AbstractInterceptor.java:41)
at org.drools.persistence.jta.TransactionLockInterceptor.execute(TransactionLockInterceptor.java:73)
at org.drools.core.command.impl.AbstractInterceptor.executeNext(AbstractInterceptor.java:41)
at org.drools.persistence.jpa.OptimisticLockRetryInterceptor.execute(OptimisticLockRetryInterceptor.java:82)
at org.jbpm.services.task.commands.TaskCommandExecutorImpl.execute(TaskCommandExecutorImpl.java:40)
at org.jbpm.services.task.impl.command.CommandBasedTaskService.complete(CommandBasedTaskService.java:174)
at org.jbpm.runtime.manager.impl.task.SynchronizedTaskService.complete(SynchronizedTaskService.java:119)
at org.jbpm.kie.services.impl.UserTaskServiceImpl.complete(UserTaskServiceImpl.java:189)
at org.jbpm.services.cdi.impl.UserTaskServiceCDIImpl$Proxy$_$$_WeldClientProxy.complete(UserTaskServiceCDIImpl$Proxy$_$$_WeldClientProxy.java)
at org.jbpm.console.ng.ht.backend.server.TaskLifeCycleServiceImpl.complete(TaskLifeCycleServiceImpl.java:52)
at org.jbpm.console.ng.ht.backend.server.TaskLifeCycleServiceImpl$Proxy$_$$_WeldClientProxy.complete(TaskLifeCycleServiceImpl$Proxy$_$$_WeldClientProxy.java)