[ 
https://issues.apache.org/jira/browse/ODE-965?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14582384#comment-14582384
 ] 

Sathwik Bantwal Premakumar commented on ODE-965:
------------------------------------------------

The event handler has to be defined within a sub scope after the correlation 
has been initiated.

{code:xml}
        <bpel:invoke name="Invoke" partnerLink="bpelProcessPartner"
                        operation="initiate" portType="ns0:echoAsynchProcess" 
inputVariable="bpelProcessPartnerRequest1">
                        <bpel:correlations>
                                <bpel:correlation set="CorrelationSet" 
initiate="join"></bpel:correlation>
                        </bpel:correlations>
                </bpel:invoke>

                <bpel:scope name="raiseFault">
                        <bpel:eventHandlers>
                                <bpel:onEvent partnerLink="callback" 
operation="callback"
                                        variable="callbackRequest" 
messageType="ns0:echoAsynchProcessResponseMessage">
                                        <bpel:correlations>
                                                <bpel:correlation 
set="CorrelationSet" initiate="join"></bpel:correlation>
                                        </bpel:correlations>
                                        <bpel:scope>
                                                <bpel:sequence>
                                                        <bpel:throw 
name="Throw" faultName="bpel:conflictingRequest"></bpel:throw>
                                                        <!--<bpel:assign 
validate="no" name="Assign1"> <bpel:copy> <bpel:from> 
                                                                <bpel:literal> 
<tns:bar2Response xmlns:tns="http://bar.org"; 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";> 
                                                                
<tns:result>tns:result</tns:result> </tns:bar2Response> 
</bpel:literal></bpel:from> 
                                                                <bpel:to 
variable="output" part="payload"></bpel:to> </bpel:copy> <bpel:copy> 
                                                                <bpel:from> 
<![CDATA[String("message received!")]]> </bpel:from> <bpel:to 
                                                                part="payload" 
variable="output"> <bpel:query 
queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"> 
                                                                
<![CDATA[tns:result]]> </bpel:query> </bpel:to> </bpel:copy> </bpel:assign> -->
                                                </bpel:sequence>
                                        </bpel:scope>
                                </bpel:onEvent>
                        </bpel:eventHandlers>
                        <bpel:wait name="Wait">
                                <bpel:for><![CDATA['PT15S']]></bpel:for>
                        </bpel:wait>
                        <bpel:reply name="replyOutput" partnerLink="client"
                                portType="tns:bar2" operation="process" 
variable="output" />
                </bpel:scope>
{code}

Similar problem has been discussed here 
http://markmail.org/message/bh4g2mvfdqc4zkjg

> eventHandler does often not receive a message
> ---------------------------------------------
>
>                 Key: ODE-965
>                 URL: https://issues.apache.org/jira/browse/ODE-965
>             Project: ODE
>          Issue Type: Bug
>          Components: BPEL Runtime
>    Affects Versions: 1.3.5
>         Environment: Apache ODE 1.3.5, Apache Tomcat 7.0.27
>            Reporter: Michael Frembs
>             Fix For: 1.3.7
>
>         Attachments: jira.zip
>
>
> Hi,
> I got a very simple test:
> On computer A a BPEL process invokes an asynchronous call to computer B. 
> Afterwards it waits for 15 seconds. Furthermore an eventHandler is launched 
> waiting for the response from B and throw an exception when activated.
> B is an echo service which simply returns the string it gets.
> Additionally I watch the network traffic using wireshark.
> Because the computer standing next to each other there are no high reponse 
> times. Therefore 15 seconds should be enough to receive the reply. I'd 
> expected getting an exception everytime I call the BPEL process. But very 
> often this doesn't happen. But everytime I get the answer from B (wireshark 
> tells me).
> So I guess there is a bug with the eventHandler?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to