spring 与jbpm整合问题

来源:互联网 发布:linux elf 文件格式 编辑:程序博客网 时间:2024/05/18 01:48
jbpm和spring 整合后,写了一个简单的流程进行测试。当用到使用了spring类的时候,程序报错
org.jbpm.graph.def.DelegationExceptionat org.jbpm.taskmgmt.exe.TaskMgmtInstance.performAssignment(TaskMgmtInstance.java:208)at org.jbpm.taskmgmt.exe.TaskInstance.assign(TaskInstance.java:198)at org.jbpm.taskmgmt.exe.TaskMgmtInstance.createTaskInstance(TaskMgmtInstance.java:148)at org.jbpm.graph.node.TaskNode.execute(TaskNode.java:167)at org.jbpm.graph.def.Node.enter(Node.java:316)at org.jbpm.graph.def.Node$FastClassByCGLIB$d187eeda.invoke(<generated>)at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)at org.hibernate.proxy.CGLIBLazyInitializer.intercept(CGLIBLazyInitializer.java:161)at org.jbpm.graph.def.Node$EnhancerByCGLIB$56fa08c3_3.enter(<generated>)at org.jbpm.graph.def.Transition.take(Transition.java:119)at org.jbpm.graph.def.Node.leave(Node.java:383)at org.jbpm.graph.node.StartState.leave(StartState.java:70)at org.jbpm.graph.def.Node$FastClassByCGLIB$d187eeda.invoke(<generated>)at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)at org.hibernate.proxy.CGLIBLazyInitializer.intercept(CGLIBLazyInitializer.java:161)at org.jbpm.graph.def.Node$EnhancerByCGLIB$56fa08c3_3.leave(<generated>)at org.jbpm.graph.exe.Token.signal(Token.java:178)at org.jbpm.graph.exe.Token.signal(Token.java:123)at org.jbpm.taskmgmt.exe.TaskInstance.end(TaskInstance.java:440)at org.jbpm.taskmgmt.exe.TaskInstance.end(TaskInstance.java:354)at com.struts.action.ModifyAction.execute(ModifyAction.java:109)at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)at javax.servlet.http.HttpServlet.service(HttpServlet.java:710)at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)at encoding.EncodingFilter.doFilter(EncodingFilter.java:32)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)at org.jbpm.webapp.filter.AuthenticationFilter.doFilter(AuthenticationFilter.java:56)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)at org.jbpm.web.JbpmContextFilter.doFilter(JbpmContextFilter.java:83)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)at org.jbpm.webapp.filter.LogFilter.doFilter(LogFilter.java:59)at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:261)at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:581)at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)at java.lang.Thread.run(Unknown Source)Caused by: java.lang.NullPointerExceptionat com.workflow.action.ManagerAssignment.assign(ManagerAssignment.java:26)at org.jbpm.taskmgmt.exe.TaskMgmtInstance.performAssignmentDelegation(TaskMgmtInstance.java:217)at org.jbpm.taskmgmt.exe.TaskMgmtInstance.performAssignment(TaskMgmtInstance.java:193)... 50 more
开始以为程序不能进入下个节点,后来发现是spring的问题
<assignment class="com.workflow.action.ManagerAssignment" config-type="bean">                       </assignment>
  将上面改为  
<assignment class="org.springmodules.workflow.jbpm31.JbpmHandlerProxy" config-type="bean">              
<targetBean>managerAssignment</targetBean>            <factoryKey>jbpmConfiguration</factoryKey>         </assignment>
这样就可以正常运行了。