我使用WSO2 BPS开发了一个BPEL工作流程。该工作流程有两个事件处理程序,用于两种不同的事件。
如果它按顺序接收两个(不同类型的)事件,则工作流程正常。但是,如果有两个事件同时到达,似乎其中一个事件被处理,另一个事件必须等待,然后我看到一个超时异常(等待事件)。
任何机构都有这方面的经验吗?是否有任何解决方案可以同时处理这两个事件?
事件处理程序:
<bpel:onEvent messageType="ws-dpalert:pushIn" operation="pushAlert" partnerLink="alertCallbackEvent" portType="ws-dpalert:PushPortType" variable="alertMessage">
<bpel:correlations>
<bpel:correlation initiate="no" set="correlator"/>
</bpel:correlations>
<bpel:scope name="onlertMessages">
<bpel:sequence name="alertProcessing">
...........
</bpel:sequence>
</bpel:scope>
</bpel:onEvent>
谢谢,
Minh Tri。
我的事件处理程序是:
....................
</bpel:sequence>
</bpel:scope>
</bpel:onEvent>
<bpel:onEvent messageType="ws-dpalert:pushIn" operation="pushAlert" partnerLink="alertCallbackEvent" portType="ws-dpalert:PushPortType" variable="alertMessage">
<bpel:correlations>
<bpel:correlation initiate="no" set="correlator"/>
</bpel:correlations>
<bpel:scope name="onlertMessages">
<bpel:sequence name="alertProcessing">
...........
</bpel:sequence>
</bpel:scope>
</bpel:onEvent>