为什么我的IBM BPM Coach事件不会触发JavaScript?

时间:2017-08-08 16:28:58

标签: ibm-bpm

我正在使用8.5.7 2017.06版本编写IBM BPM Coach,并创建了一个类似于以下内容的事件处理程序:

\\ Hide the dialog
${MyDialog}.setVisible(false);

\\ Execute the service
${MyService}.execue();

然而,当事件发生时,什么都没有执行?

2 个答案:

答案 0 :(得分:1)

当我们创建在Coach中运行的脚本时,即使Process Designer条目显示多行内容辅助,当脚本保存然后执行时,代码将“串在一起”作为单行。所以代码:

// Hide the dialog
${MyDialog}.setVisible(false);

// Execute the service
${MyService}.execute();

变为:

 // Hide the dialog ${MyDialog}.setVisible(false); // Execute the service ${MyService}.execute();

因此,//成为行注释的开头,基本上会注释掉行的其余部分。解决方案是不使用评论或使用/**/评论括号。

答案 1 :(得分:0)

事件处理程序编辑器误导性地表明它是完整的多行JS代码。正如您所看到的,此代码被评估为单行代码。它看起来像BPM编辑器的缺陷。如果事件编辑器可以正确地将\n个字符注入到BPM UI(SPARK工具包)使用的new Function(expressionString)进一步传递的表达式,则单行注释可以正常工作。另请注意,在事件处理程序代码中使用回车符也会被错误处理,此时需要将\\n放入已执行代码中\n。请参阅my findings here