gpt4 book ai didi

jbpm - 在任何信号边界事件上获取 "Data Output has no Data Type"

转载 作者:行者123 更新时间:2023-11-30 23:57:58 25 4
gpt4 key购买 nike

我在 Eclipse Luna 中使用 BPMN2 建模器 v1.1.3.201503101616,为 Jboss EAP 6.1 开发 JBPM 6.0.3。每当我向事件添加信号边界事件时,它都会被标记为错误“Data Output Signal_1_Output () has no Data Type”。错误的类型为“jBPM Process Problem”。

例如,这是我整理的一个简单工作流程:

process with signal boundary event

这是该过程的生成源代码(标记了错误的行):

  <bpmn2:itemDefinition id="ItemDefinition_4" isCollection="false" structureRef="String"/>
<bpmn2:signal id="SignalFoo" name="SignalFoo"/>
<bpmn2:process id="defaultPackage.Scratch" tns:packageName="defaultPackage" name="Scratch" isExecutable="true" processType="Private">
<bpmn2:property id="str" itemSubjectRef="ItemDefinition_4" name="str"/>
<bpmn2:startEvent id="StartEvent_1" name="StartProcess">
<bpmn2:outgoing>SequenceFlow_1</bpmn2:outgoing>
</bpmn2:startEvent>
<bpmn2:scriptTask id="ScriptTask_1" name="Script Task 1" scriptFormat="http://www.java.com/java">
<bpmn2:incoming>SequenceFlow_1</bpmn2:incoming>
<bpmn2:outgoing>SequenceFlow_2</bpmn2:outgoing>
<bpmn2:script>System.out.println(&quot;Hello world!&quot;);</bpmn2:script>
</bpmn2:scriptTask>
<bpmn2:sequenceFlow id="SequenceFlow_1" tns:priority="1" sourceRef="StartEvent_1" targetRef="ScriptTask_1"/>
<bpmn2:boundaryEvent id="BoundaryEvent_1" name="" attachedToRef="ScriptTask_1">
<bpmn2:outgoing>SequenceFlow_3</bpmn2:outgoing>
<bpmn2:dataOutput id="DataOutput_1" name="Signal_1_Output"/> <-- Error
<bpmn2:dataOutputAssociation id="DataOutputAssociation_1">
<bpmn2:sourceRef>DataOutput_1</bpmn2:sourceRef>
<bpmn2:targetRef>str</bpmn2:targetRef>
</bpmn2:dataOutputAssociation>
<bpmn2:outputSet id="OutputSet_1" name="Output Set 1">
<bpmn2:dataOutputRefs>DataOutput_1</bpmn2:dataOutputRefs>
</bpmn2:outputSet>
<bpmn2:signalEventDefinition id="SignalEventDefinition_1" signalRef="SignalFoo"/>
</bpmn2:boundaryEvent>
<bpmn2:endEvent id="EndEvent_1" name="End Event 1">
<bpmn2:incoming>SequenceFlow_2</bpmn2:incoming>
</bpmn2:endEvent>
<bpmn2:sequenceFlow id="SequenceFlow_2" tns:priority="1" sourceRef="ScriptTask_1" targetRef="EndEvent_1"/>
<bpmn2:scriptTask id="ScriptTask_2" name="Script Task 2" scriptFormat="http://www.java.com/java">
<bpmn2:incoming>SequenceFlow_3</bpmn2:incoming>
<bpmn2:outgoing>SequenceFlow_4</bpmn2:outgoing>
<bpmn2:script>System.out.println(&quot;Goodbye, cruel world!&quot;);</bpmn2:script>
</bpmn2:scriptTask>
<bpmn2:sequenceFlow id="SequenceFlow_3" tns:priority="1" sourceRef="BoundaryEvent_1" targetRef="ScriptTask_2"/>
<bpmn2:endEvent id="EndEvent_2" name="End Event 2">
<bpmn2:incoming>SequenceFlow_4</bpmn2:incoming>
</bpmn2:endEvent>
<bpmn2:sequenceFlow id="SequenceFlow_4" tns:priority="1" sourceRef="ScriptTask_2" targetRef="EndEvent_2"/>
</bpmn2:process>

尽管有错误,Jbpm 能够毫无怨言地运行流程,边界事件似乎也能正常工作。我无法在 Internet 上找到任何其他提及此特定错误的信息。我也在寻找调整 jBPM 流程验证器的方法,但我在 eclipse 首选项中找不到任何相关信息。

这是合法的错误吗?有人可以建议如何解决它吗?或者,有没有办法禁用此验证规则?

最佳答案

jBPM 没有指定数据类型的要求(对于边界事件和其他地方)。 Modeler 错误地将此标记为错误。您能否打开一个 Eclipse BPMN2 Modeler Bugzilla,以便我们可以修复此问题(如果尚未解决)?

关于jbpm - 在任何信号边界事件上获取 "Data Output has no Data Type",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29152545/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com