[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 {

          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;


              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);


          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

Start a new discussion in jBPM at Community

-------------- 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