[jboss-dev-forums] [jBPM Development] - JBPM5 - Human task not getting completed
vmaroli
do-not-reply at jboss.com
Fri Jun 17 02:19:21 EDT 2011
vmaroli [http://community.jboss.org/people/vmaroli] created the discussion
"JBPM5 - Human task not getting completed"
To view the discussion, visit: http://community.jboss.org/message/610723#610723
--------------------------------------------------------------
I am trying out a sample process with a human task. Configured persistence for both Task server and process instnace in postgresql. Process flow is stopping at the human task as expected. After this I am completing the task using a human task client. Problem is that after this the process is not proceeding to complete. I am using JPAKnowledgeService and CommandBasedWSHumanTaskHandler. Is there anything additional need to be done for completing the process another than invoking the task api at task server ?
Is there any significance to the task name & name we give to the Human Task in the process ?
Code used for starting process.
Logger logger = Logger.getLogger(this.getClass().getName());
Environment env = KnowledgeBaseFactory.newEnvironment();
env.set( EnvironmentName.ENTITY_MANAGER_FACTORY, emf );
env.set(EnvironmentName.GLOBALS, new MapGlobalResolver());
env.set(EnvironmentName.TRANSACTION_MANAGER, TransactionManagerServices.getTransactionManager());
logger.info("Loading process definition");
KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();
kbuilder.add(ResourceFactory.newClassPathResource(processDefinition), ResourceType.BPMN2);
kbase = kbuilder.newKnowledgeBase();
Properties properties = new Properties();
properties.put("drools.processInstanceManagerFactory", "org.jbpm.persistence.processinstance.JPAProcessInstanceManagerFactory");
properties.put("drools.processSignalManagerFactory", "org.jbpm.persistence.processinstance.JPASignalManagerFactory");
KnowledgeSessionConfiguration config = KnowledgeBaseFactory.newKnowledgeSessionConfiguration(properties);
logger.info("create session");
ksession = JPAKnowledgeService.newStatefulKnowledgeSession( kbase, config, env );
int sessionId = ksession.getId();
logger.info("Session Id : "+sessionId);
logger.info("Registering Human Task listener");
CommandBasedWSHumanTaskHandler cbHandler = new CommandBasedWSHumanTaskHandler(ksession);
ksession.getWorkItemManager().registerWorkItemHandler("Human Task", cbHandler);
ksession.startProcess("com.ht.test");
Human Task Service
public class HumanTaskService {
private TaskService taskService = null;
private TaskServiceSession taskSession = null;
public HumanTaskService(EntityManagerFactory emFactory) {
Logger logger = Logger.getLogger(this.getClass().getName());
logger.info("Initializing Human Task Service");
SystemEventListener systemEventListener = SystemEventListenerFactory.getSystemEventListener();
taskService = new TaskService(emFactory, systemEventListener);
taskSession = taskService.createSession();
taskSession.addUser(new User("Administrator"));
}
public void addUser(String userId) {
Logger logger = Logger.getLogger(this.getClass().getName());
logger.info("Adding user "+userId);
taskSession.addUser(new User(userId));
}
public void startTaskService() {
Logger logger = Logger.getLogger(this.getClass().getName());
logger.info("Starting Human Task Service");
MinaTaskServer server = new MinaTaskServer( taskService );
Thread thread = new Thread( server );
thread.start();
}
}
--------------------------------------------------------------
Reply to this message by going to Community
[http://community.jboss.org/message/610723#610723]
Start a new discussion in jBPM Development at Community
[http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2035]
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-dev-forums/attachments/20110617/90c366da/attachment.html
More information about the jboss-dev-forums
mailing list