[jboss-user] [jBPM] - Domain-specific process doesn't start
Laura delli Paoli
do-not-reply at jboss.com
Fri Nov 23 05:50:03 EST 2012
Laura delli Paoli [https://community.jboss.org/people/lauradp] created the discussion
"Domain-specific process doesn't start"
To view the discussion, visit: https://community.jboss.org/message/778071#778071
--------------------------------------------------------------
Hello everybody,
I'm using JBoss AS 7.1.1 and jBPM 5.4.
I was trying to define my custom process "Run Action".
*1)* I created my "MyProcessesDefinition.conf" file:
import org.drools.process.core.datatype.impl.type.ObjectDataType;
import org.drools.process.core.datatype.impl.type.StringDataType;
import org.drools.process.core.datatype.impl.type.IntegerDataType;
[
// my workItem
[
"name" : "RunAction",
"parameters" : [
"Command" : new StringDataType(),
"Parameters" : new ObjectDataType(),
],
"results" : [
"ExitValue" : new IntegerDataType(),
],
"displayName" : "RunAction",
"icon" : "icons/operation.ico"
]
]
*2)* I created my "drools.rulebase.conf"
drools.workDefinitions = MyProcessesDefinition.conf WorkDefinitions.conf
*3)* I created the the RunAction handler
public class RunActionHandler implements WorkItemHandler {
@Override
public void abortWorkItem(WorkItem workItem, WorkItemManager manager) {
// extract parameters
String command = (String) workItem.getParameter("Command");
HashMap parameters = (HashMap) workItem.getParameter("Parameters");
// run command
String command_with_params =command;
Runtime runtime = Runtime.getRuntime();
Process process = null;
System.out.println("okkk");
Map<String, Object> result = new HashMap<String, Object>();
result.put("ExitValue", new Integer (0));
// notify manager that work item has been completed
manager.completeWorkItem(workItem.getId(), result);
}
@Override
public void executeWorkItem(WorkItem arg0, WorkItemManager arg1) {
// Se invio un Ctrl+C interrompo il task????
}
}
*4)*I created the process depicted in the attachement
*5)* I wrote the following main:
public class ProcessMain {
public static final void main(String[] args) throws Exception {
// load up the knowledge base
KnowledgeBase kbase = readKnowledgeBase();
StatefulKnowledgeSession ksession = kbase.newStatefulKnowledgeSession();
ksession.getWorkItemManager().registerWorkItemHandler("RunAction", new RunActionHandler());
Map<String, Object> params = new HashMap<String, Object>();
Object workflowName= new String ("C:\test.bat"), Properties = new String("");
params.put("Command", workflowName);
params.put("Parameters", Properties);
// start a new process instance
ksession.startProcess("wkfRepository.singleTaskWkf", params);
System.out.println("Process started ...");
}
private static KnowledgeBase readKnowledgeBase() throws Exception {
KnowledgeBuilder kbuilder = KnowledgeBuilderFactory.newKnowledgeBuilder();
kbuilder.add(ResourceFactory.newClassPathResource("SingleTaskWkf.bpmn"), ResourceType.BPMN2);
return kbuilder.newKnowledgeBase();
}
}
When I start the JBoss server, and run the the java application the process ends, but the custom process does not start (the "okkk" message is NOT printed).
Can anyone help me?
--------------------------------------------------------------
Reply to this message by going to Community
[https://community.jboss.org/message/778071#778071]
Start a new discussion in jBPM at Community
[https://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2034]
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.jboss.org/pipermail/jboss-user/attachments/20121123/4a727fb3/attachment.html
More information about the jboss-user
mailing list