Java 如何在JBPM中为用户任务编写代码
说到JBPM,我是个新手。虽然我已经用脚本任务和用户任务创建了示例应用程序。当我删除用户任务时,bpmn执行得很好。但当我保留UserTask时,它抛出了一个异常 以下是我的代码:Java 如何在JBPM中为用户任务编写代码,java,drools,jbpm,Java,Drools,Jbpm,说到JBPM,我是个新手。虽然我已经用脚本任务和用户任务创建了示例应用程序。当我删除用户任务时,bpmn执行得很好。但当我保留UserTask时,它抛出了一个异常 以下是我的代码: package com.Sservlet; import java.io.IOException; import java.util.List; import javax.persistence.EntityManagerFactory; import javax.persistence.Persistence;
package com.Sservlet;
import java.io.IOException;
import java.util.List;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.*;
import org.drools.KnowledgeBase;
import org.drools.SystemEventListenerFactory;
import org.drools.builder.*;
import org.drools.io.ResourceFactory;
import org.drools.runtime.StatefulKnowledgeSession;
import org.drools.runtime.process.ProcessInstance;
import org.jbpm.bpmn2.handler.ServiceTaskHandler;
import org.jbpm.process.workitem.wsht.CommandBasedWSHumanTaskHandler;
import org.jbpm.task.*;
import org.jbpm.task.service.*;
public class SServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
// TODO Auto-generated method stub
KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();
kbuilder.add(ResourceFactory.newClassPathResource("Jcr.bpmn2"), ResourceType.BPMN2);
KnowledgeBase kbase = kbuilder.newKnowledgeBase();
StatefulKnowledgeSession ksession = kbase.newStatefulKnowledgeSession();
CommandBasedWSHumanTaskHandler taskHandler = new CommandBasedWSHumanTaskHandler(ksession);
ksession.getWorkItemManager().registerWorkItemHandler("Human Task", new ServiceTaskHandler());
EntityManagerFactory emf = Persistence.createEntityManagerFactory("org.jbpm.task");
TaskService taskService = new TaskService(emf, SystemEventListenerFactory.getSystemEventListener());
TaskServiceSession taskSession = taskService.createSession();
// now register new users and groups
List list = taskSession.getTasksAssignedAsPotentialOwner("John", "en-UK");
taskHandler.connect();
ProcessInstance processInstance = ksession.startProcess("TestHandle");
System.out.println("hello here are");
}
}
我收到无持久性提供程序异常:
javax.persistence.PersistenceException:没有名为org.jbpm.task的EntityManager的持久性提供程序
我不需要在这里插入任何数据库。这是一个简单的用户任务。有什么解决方案吗?那是什么样的交错代码格式?编辑:我修正了格式。行:
EntityManagerFactoryEMF=Persistence.createEntityManagerFactory(“org.jbpm.task”)
是说您有一个名为“org.jbpm.task”的实体管理器,但它找不到它。谢谢。但是我已经上传了jar。