You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@synapse.apache.org by "Ruwan Linton (JIRA)" <ji...@apache.org> on 2008/03/08 21:43:47 UTC

[jira] Resolved: (SYNAPSE-241) Handling of asynchronous invocations is not correct!

     [ https://issues.apache.org/jira/browse/SYNAPSE-241?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ruwan Linton resolved SYNAPSE-241.
----------------------------------

       Resolution: Fixed
    Fix Version/s: NIGHTLY

This was a configuration issue and there was an issue in adding the required configuration to do the asynchronous messaging and that has been fixed in the header mediator.

> Handling of asynchronous invocations is not correct!
> ----------------------------------------------------
>
>                 Key: SYNAPSE-241
>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-241
>             Project: Synapse
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.1.1
>         Environment: Windows XP SP 2
> Java JDK 1.5.0.12
>            Reporter: Jens Goldhammer
>            Assignee: Ruwan Linton
>            Priority: Blocker
>             Fix For: NIGHTLY
>
>         Attachments: synapse-core-1.2-002.jar
>
>
> As found out together with Ruwan, the ESB does not handle async invocations with a separate listener correctly.
> Following scenarios:
> - axis2 client<-> axis2 service
> If I invoke the service directly by the client, I can see that the response will not be delivered within the same http session. I only get an accepted response by the server, the response is delivered to the simpleServer on the client and the callbackhandler will become active. Everything works fine!
> axis2 client<->synapse<-> axis2 service
> If I try this with synapse, I see that the same http session is used for the request and response message. Therefore the callbackhandler on clientside does not recognize that there is a response...
> ==============
> Listen Port: 8002
> Target Host: 127.0.0.1
> Target Port: 8180
> ==== Request ====
> POST http://localhost:8002/esbQueueService/services/QueueService HTTP/1.1
> Host: 127.0.0.1:8002
> Proxy-Connection: Keep-Alive
> SOAPAction: urn:queueOperation1
> Content-Type: text/xml; charset=UTF-8
> Transfer-Encoding: chunked
> Connection: Keep-Alive
> User-Agent: Synapse-HttpComponents-NIO
> 23f
> <?xml version='1.0' encoding='UTF-8'?>
>    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="http://www.w3.org/2005/08/addressing">
>       <soapenv:Header>
>          <wsa:To>http://localhost:8002/esbQueueService/services/QueueService</wsa:To>
>          <wsa:MessageID>urn:uuid:B914C0B6FFF134DAD21095318257655744388730</wsa:MessageID>
>          <wsa:Action>urn:queueOperation1</wsa:Action>
>       </soapenv:Header>
>       <soapenv:Body>
>          <ns1:fromClientRequest xmlns:ns1="http://de/ibm/com/xsd/queue">
>             <ns1:reqEl> World, hello to you!</ns1:reqEl>
>          </ns1:fromClientRequest>
>       </soapenv:Body>
>    </soapenv:Envelope>0
> ==== Response ====
> HTTP/1.1 200 OK
> Server: Apache-Coyote/1.1
> Content-Type: text/xml;charset=UTF-8
> Transfer-Encoding: chunked
> Date: Tue, 05 Feb 2008 10:03:34 GMT
> 23b
> <?xml version='1.0' encoding='UTF-8'?>
>    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="http://www.w3.org/2005/08/addressing">
>       <soapenv:Header>
>          <wsa:Action>http://de/ibm/com/wsdl/queue/service/QueueServicePortType/queueOperation1Response</wsa:Action>
>          <wsa:RelatesTo>urn:uuid:B914C0B6FFF134DAD21095318257655744388730</wsa:RelatesTo>
>       </soapenv:Header>
>       <soapenv:Body>
>          <ns1:fromQueueResponse xmlns:ns1="http://de/ibm/com/xsd/queue">
>             <ns1:respEl>from ibm World, hello to you!</ns1:respEl>
>          </ns1:fromQueueResponse>
>       </soapenv:Body>
>    </soapenv:Envelope>0
> ============== 
> For more details and code look at http://www.nabble.com/async-problems-td15287042.html.
> Ruwan has the complete code of my projects...
> Thanks for fixing,
> Jens Goldhammer

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org


Re: [jira] Resolved: (SYNAPSE-241) Handling of asynchronous invocations is not correct!

Posted by Ruwan Linton <ru...@gmail.com>.
Hi Jens,

Yes we can handle a dual channel between the client and synapse (in your
case bpel), but we are having some issues related to the synapse and server
side.

At the same time even though we can handle the dual channel scenario it has
been done by configuring the proxy through the synapse configuration to
order synapse to handle the dual channel case. I think rather we have to
automate this behavior to synapse so that you wont have to do any
configuration to handle the dual channel case.

There is already a JIRA on this [1]. Please follow on that JIRA.

[1] - https://issues.apache.org/jira/browse/SYNAPSE-252

Thanks,
Ruwan

On Thu, Mar 13, 2008 at 4:47 PM, Jens Goldhammer <
goldhammerdev@googlemail.com> wrote:

> Hello Ruwan,
>
> I have further question to async actions.
> Can you explain me how Synapse handles sync and async invocations of
> proxy services?
> Example:
>
> bpel1<->synapse1<->service1
>
> bpel1 invokes the proxy on synapse1 with soap over http
> (two-way-invoke). Does Synapse holds the http-connection to the
> bpel-engine?
> Furthermore, can I get an async (seperateListener->two different
> channels) interaction with ODE and Synapse? I want that the bpel engine
> does not hold a connection to Synapse- it seems to me that it is the
> case...
>
> Thanks,
> Jens
>
>
> Ruwan Linton (JIRA) schrieb:
> >      [
> https://issues.apache.org/jira/browse/SYNAPSE-241?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel]
> >
> > Ruwan Linton resolved SYNAPSE-241.
> > ----------------------------------
> >
> >        Resolution: Fixed
> >     Fix Version/s: NIGHTLY
> >
> > This was a configuration issue and there was an issue in adding the
> required configuration to do the asynchronous messaging and that has been
> fixed in the header mediator.
> >
> >
> >> Handling of asynchronous invocations is not correct!
> >> ----------------------------------------------------
> >>
> >>                 Key: SYNAPSE-241
> >>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-241
> >>             Project: Synapse
> >>          Issue Type: Bug
> >>          Components: Core
> >>    Affects Versions: 1.1.1
> >>         Environment: Windows XP SP 2
> >> Java JDK 1.5.0.12
> >>            Reporter: Jens Goldhammer
> >>            Assignee: Ruwan Linton
> >>            Priority: Blocker
> >>             Fix For: NIGHTLY
> >>
> >>         Attachments: synapse-core-1.2-002.jar
> >>
> >>
> >> As found out together with Ruwan, the ESB does not handle async
> invocations with a separate listener correctly.
> >> Following scenarios:
> >> - axis2 client<-> axis2 service
> >> If I invoke the service directly by the client, I can see that the
> response will not be delivered within the same http session. I only get an
> accepted response by the server, the response is delivered to the
> simpleServer on the client and the callbackhandler will become active.
> Everything works fine!
> >> axis2 client<->synapse<-> axis2 service
> >> If I try this with synapse, I see that the same http session is used
> for the request and response message. Therefore the callbackhandler on
> clientside does not recognize that there is a response...
> >> ==============
> >> Listen Port: 8002
> >> Target Host: 127.0.0.1
> >> Target Port: 8180
> >> ==== Request ====
> >> POST http://localhost:8002/esbQueueService/services/QueueServiceHTTP/1.1
> >> Host: 127.0.0.1:8002
> >> Proxy-Connection: Keep-Alive
> >> SOAPAction: urn:queueOperation1
> >> Content-Type: text/xml; charset=UTF-8
> >> Transfer-Encoding: chunked
> >> Connection: Keep-Alive
> >> User-Agent: Synapse-HttpComponents-NIO
> >> 23f
> >> <?xml version='1.0' encoding='UTF-8'?>
> >>    <soapenv:Envelope xmlns:soapenv="
> http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="
> http://www.w3.org/2005/08/addressing">
> >>       <soapenv:Header>
> >>          <wsa:To>
> http://localhost:8002/esbQueueService/services/QueueService</wsa:To>
> >>
>  <wsa:MessageID>urn:uuid:B914C0B6FFF134DAD21095318257655744388730</wsa:MessageID>
> >>          <wsa:Action>urn:queueOperation1</wsa:Action>
> >>       </soapenv:Header>
> >>       <soapenv:Body>
> >>          <ns1:fromClientRequest xmlns:ns1="http://de/ibm/com/xsd/queue
> ">
> >>             <ns1:reqEl> World, hello to you!</ns1:reqEl>
> >>          </ns1:fromClientRequest>
> >>       </soapenv:Body>
> >>    </soapenv:Envelope>0
> >> ==== Response ====
> >> HTTP/1.1 200 OK
> >> Server: Apache-Coyote/1.1
> >> Content-Type: text/xml;charset=UTF-8
> >> Transfer-Encoding: chunked
> >> Date: Tue, 05 Feb 2008 10:03:34 GMT
> >> 23b
> >> <?xml version='1.0' encoding='UTF-8'?>
> >>    <soapenv:Envelope xmlns:soapenv="
> http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="
> http://www.w3.org/2005/08/addressing">
> >>       <soapenv:Header>
> >>          <wsa:Action>
> http://de/ibm/com/wsdl/queue/service/QueueServicePortType/queueOperation1Response
> </wsa:Action>
> >>
>  <wsa:RelatesTo>urn:uuid:B914C0B6FFF134DAD21095318257655744388730</wsa:RelatesTo>
> >>       </soapenv:Header>
> >>       <soapenv:Body>
> >>          <ns1:fromQueueResponse xmlns:ns1="http://de/ibm/com/xsd/queue
> ">
> >>             <ns1:respEl>from ibm World, hello to you!</ns1:respEl>
> >>          </ns1:fromQueueResponse>
> >>       </soapenv:Body>
> >>    </soapenv:Envelope>0
> >> ==============
> >> For more details and code look at
> http://www.nabble.com/async-problems-td15287042.html.
> >> Ruwan has the complete code of my projects...
> >> Thanks for fixing,
> >> Jens Goldhammer
> >>
> >
> >
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
> For additional commands, e-mail: dev-help@synapse.apache.org
>
>


-- 
Ruwan Linton
http://www.wso2.org - "Oxygenating the Web Services Platform"

Re: [jira] Resolved: (SYNAPSE-241) Handling of asynchronous invocations is not correct!

Posted by Jens Goldhammer <go...@googlemail.com>.
Hello Ruwan,

I have further question to async actions.
Can you explain me how Synapse handles sync and async invocations of 
proxy services?
Example:

bpel1<->synapse1<->service1

bpel1 invokes the proxy on synapse1 with soap over http 
(two-way-invoke). Does Synapse holds the http-connection to the bpel-engine?
Furthermore, can I get an async (seperateListener->two different 
channels) interaction with ODE and Synapse? I want that the bpel engine 
does not hold a connection to Synapse- it seems to me that it is the case...

Thanks,
Jens


Ruwan Linton (JIRA) schrieb:
>      [ https://issues.apache.org/jira/browse/SYNAPSE-241?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
>
> Ruwan Linton resolved SYNAPSE-241.
> ----------------------------------
>
>        Resolution: Fixed
>     Fix Version/s: NIGHTLY
>
> This was a configuration issue and there was an issue in adding the required configuration to do the asynchronous messaging and that has been fixed in the header mediator.
>
>   
>> Handling of asynchronous invocations is not correct!
>> ----------------------------------------------------
>>
>>                 Key: SYNAPSE-241
>>                 URL: https://issues.apache.org/jira/browse/SYNAPSE-241
>>             Project: Synapse
>>          Issue Type: Bug
>>          Components: Core
>>    Affects Versions: 1.1.1
>>         Environment: Windows XP SP 2
>> Java JDK 1.5.0.12
>>            Reporter: Jens Goldhammer
>>            Assignee: Ruwan Linton
>>            Priority: Blocker
>>             Fix For: NIGHTLY
>>
>>         Attachments: synapse-core-1.2-002.jar
>>
>>
>> As found out together with Ruwan, the ESB does not handle async invocations with a separate listener correctly.
>> Following scenarios:
>> - axis2 client<-> axis2 service
>> If I invoke the service directly by the client, I can see that the response will not be delivered within the same http session. I only get an accepted response by the server, the response is delivered to the simpleServer on the client and the callbackhandler will become active. Everything works fine!
>> axis2 client<->synapse<-> axis2 service
>> If I try this with synapse, I see that the same http session is used for the request and response message. Therefore the callbackhandler on clientside does not recognize that there is a response...
>> ==============
>> Listen Port: 8002
>> Target Host: 127.0.0.1
>> Target Port: 8180
>> ==== Request ====
>> POST http://localhost:8002/esbQueueService/services/QueueService HTTP/1.1
>> Host: 127.0.0.1:8002
>> Proxy-Connection: Keep-Alive
>> SOAPAction: urn:queueOperation1
>> Content-Type: text/xml; charset=UTF-8
>> Transfer-Encoding: chunked
>> Connection: Keep-Alive
>> User-Agent: Synapse-HttpComponents-NIO
>> 23f
>> <?xml version='1.0' encoding='UTF-8'?>
>>    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="http://www.w3.org/2005/08/addressing">
>>       <soapenv:Header>
>>          <wsa:To>http://localhost:8002/esbQueueService/services/QueueService</wsa:To>
>>          <wsa:MessageID>urn:uuid:B914C0B6FFF134DAD21095318257655744388730</wsa:MessageID>
>>          <wsa:Action>urn:queueOperation1</wsa:Action>
>>       </soapenv:Header>
>>       <soapenv:Body>
>>          <ns1:fromClientRequest xmlns:ns1="http://de/ibm/com/xsd/queue">
>>             <ns1:reqEl> World, hello to you!</ns1:reqEl>
>>          </ns1:fromClientRequest>
>>       </soapenv:Body>
>>    </soapenv:Envelope>0
>> ==== Response ====
>> HTTP/1.1 200 OK
>> Server: Apache-Coyote/1.1
>> Content-Type: text/xml;charset=UTF-8
>> Transfer-Encoding: chunked
>> Date: Tue, 05 Feb 2008 10:03:34 GMT
>> 23b
>> <?xml version='1.0' encoding='UTF-8'?>
>>    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:wsa="http://www.w3.org/2005/08/addressing">
>>       <soapenv:Header>
>>          <wsa:Action>http://de/ibm/com/wsdl/queue/service/QueueServicePortType/queueOperation1Response</wsa:Action>
>>          <wsa:RelatesTo>urn:uuid:B914C0B6FFF134DAD21095318257655744388730</wsa:RelatesTo>
>>       </soapenv:Header>
>>       <soapenv:Body>
>>          <ns1:fromQueueResponse xmlns:ns1="http://de/ibm/com/xsd/queue">
>>             <ns1:respEl>from ibm World, hello to you!</ns1:respEl>
>>          </ns1:fromQueueResponse>
>>       </soapenv:Body>
>>    </soapenv:Envelope>0
>> ============== 
>> For more details and code look at http://www.nabble.com/async-problems-td15287042.html.
>> Ruwan has the complete code of my projects...
>> Thanks for fixing,
>> Jens Goldhammer
>>     
>
>   

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@synapse.apache.org
For additional commands, e-mail: dev-help@synapse.apache.org