Jboss jBPM-访问信号事件数据?

Jboss jBPM-访问信号事件数据?,jboss,jbpm,business-process-management,bpmn,Jboss,Jbpm,Business Process Management,Bpmn,我是jBPM的新手,我似乎失去了一些基本的东西。从开发人员的角度来看,我似乎找不到任何关于如何使实际流程工作的教程。因此,我跟随官员。我已经设置了屏幕截图中显示的流程 正如你所看到的,这个过程非常简单。将引发一个信号事件,并将提供给该信号事件的数据映射到IncomingData对象。在下面的脚本任务中,我向控制台写入一条消息,并尝试写入IncomingData对象的测试属性数据内容,以测试事件数据的处理 我使用单元测试测试我的流程: @Test public void testProcess(

我是jBPM的新手,我似乎失去了一些基本的东西。从开发人员的角度来看,我似乎找不到任何关于如何使实际流程工作的教程。因此,我跟随官员。我已经设置了屏幕截图中显示的流程

正如你所看到的,这个过程非常简单。将引发一个信号事件,并将提供给该信号事件的数据映射到
IncomingData
对象。在下面的脚本任务中,我向控制台写入一条消息,并尝试写入
IncomingData
对象的测试属性数据内容,以测试事件数据的处理

我使用单元测试测试我的流程:

@Test
public void testProcess() {
    RuntimeManager manager = createRuntimeManager("workflow.bpmn");
    RuntimeEngine engine = getRuntimeEngine(null);
    KieSession ksession = engine.getKieSession();

    ProcessInstance processInstance = ksession.startProcess("testing.OA");

    IncomingData dataObject = new IncomingData();
    dataObject.testProperty = "Testing data 2";
    ksession.signalEvent("StartSignalWithData", dataObject, processInstance.getId());


    // check whether the process instance has completed successfully
    assertProcessInstanceCompleted(processInstance.getId(), ksession);

    manager.disposeRuntimeEngine(engine);
    manager.close();

}
但是,我在控制台输出中得到的只是消息
脚本任务日志记录null
。你能解释一下我哪里错了吗

  • 我很有信心,在我的单元测试中,我使用正确的过程通过了事件数据,如图所示。我不相信有什么问题

  • 过程建模中是否存在问题?我已经创建了数据对象
    IncomingData
    ,我相信它可以保存事件的数据。编辑:我还将信号输入数据映射到相应的数据对象(参见下一个屏幕截图)。这有什么问题吗

  • 在脚本任务中调用
    IncomingData
    对象时是否出错?我应该使用
    kcontext
    还是什么
  • 你能给我指一下jBPM 6.1的教程吗

    先谢谢你


    编辑:PS。您可以在启动事件中找到我的bpmn文件。您还需要创建一个映射,将信号数据映射到您选择的变量。

    我发现了问题。当我试着更仔细地调试时,我注意到当进程通过调用
    ksession.startProcess(“testing.OA”)
    启动时,进程的脚本任务就会执行,该调用是在事件引发之前通过
    ksession.signalEvent
    完成的。当流程执行时,这自然会被leed转换为null
    IncomingData
    对象。

    感谢您的回复。我已经做到了。请看我编辑的答案。。。你能推荐一个教程或什么吗?