You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@synapse.apache.org by t....@chello.nl on 2006/08/17 14:36:17 UTC

Reliable Messaging support

Hi there,

I have discussed some items about the RM support in Synapse in the user list 
(see the mailings below).
Because I am on a short timeframe to make this example with RM work, I hope 
somebody can help me with this.
As I said in one of the mails below is that I am currently working on a 
Enterprise Integration Patterns (Of Hohpe/Woolf) in Action book
for Manning. For this book me and another author want to display the EIP with 
Mule and with Synapse.
I am now working on the guaranteed delivery pattern and I need some help on the 
RM implementation.

Thanks,

Tijs




Asankha,

Thanks for your reply. I tried your solution with a endpoint element with 
enableRM.
It does make the call to the backend service but not over RM.
I have the following definition:

<synapse xmlns="http://ws.apache.org/ns/synapse">
<definitions>
<endpoint name="GroceryEndpoint" address="http://localhost:8081/axis2/services/FastDeliveryService">
<enableRM/>
</endpoint>
</definitions>
<rules>
<!-- now log the message using log4j -->
<in>
<filter source="get-property('Action')" regex=".*/groceryorder">
<send>
<endpoint ref="GroceryEndpoint"/>
</send>
</filter>
</in>
<out>
<log level="full"/>
<send/>
</out>
</rules>
</synapse>

I use the latest version of Synapse from the Subversion repository.
When I use tcpmon to look at the messages exchanged between synapse and the 
backend service I can see that no RM related messages
like createSequence are exchanged, so it just seems to ignore the enableRM 
element.
Can you help me with this.

Regards,

Tijs



Tijs

Please see my comments below

Are you saying that the proxy service with RM for the backend service should 
already be working?
Yes, but RM for the backend is not achieved through the proxy services, or 
the RM mediator - these are for accepting over RM. Sending over RM is achieved 
through the send mediator, to an "endpoint" where RM is enabled.

If this is so, can you maybe provide me with an example of the Synapse 
Configuration Language for this?
Let me explain the background for my question.
I am working on a Enterprise Integration Patterns (EIP) in Action book that 
will be published at Manning.
We are implementing a selection of valuable EIP (of the Hohpe/Woolf book) in 
this book with messaging based integration with Mule and
web services integration with Synapse. One of the patterns is guaranteed 
delivery, so I would like an implementation
where a client sends a SOAP message to Synapse, and Synapse uses reliable 
messaging to call the backend service.
define your endpoint as say
<endpoint name="myRMendpoint" address="http://...........">
<enableRM/>
</endpoint>

...
and use it in your rules as
<send>
<endpoint ref="myRMendpoint"/>
</send>

This will send your message over RM to the address defined within your endpoint 
definition


Another question that I have is if there is an interest with some of the 
developers of the Synapse project to help with
gathering the necessary information for implementing the EIPs? I think it would 
also be a valuable asset for the Synapse project if
it could say that it supports many EIP. 
Please let us (devs) know about any EIP's on which you need more information, 
and we will see how best we can help you with this. You should post that to the 
dev list

asankha

Thanks,

Tijs

van: "Asankha C. Perera" <as...@wso2.com>
datum: 2006/08/16 Wed AM 07:33:43 CEST
aan: synapse-user@ws.apache.org
onderwerp: Re: Reliable Messaging

Tijs

Have you tried creating a proxy service with RM for your backend service 
instead? The RM mediator is a complex case to implement, as Synapse has 
to process a message through the RM module after we have accepted it - 
so I guess it will take a few days for us to complete it. So if proxy 
services model works for you, it will be easier to use and ready.

asankha

t.rademakers@chello.nl wrote:
Asankha,

Thanks for the reply.
It would be great if Saminda could get back to me on this.
To me it also seems that the RM mediator is not 100% working yet.
In the last post I states that it was working with Synapse just as a proxy, but 
that is not right.
It only works when my client web service is directly communicating with the 
target web service with Reliable Messaging.
With Synapse it is just not working.

Thanks,

Tijs


Tijs

Sorry for the delay in responding, as some of the members are attending the 
ApacheCon Asia this week. As far as I know the RM mediator is not 100% 
completed yet.. let me get Saminda to reply to your email tomorrow, as he was 
implementing the RM mediator.

asankha

t.rademakers@chello.nl wrote: 
I hope somebody of the Synapse team can give an answer to question about 
ReliableMessaging.
I have an example of reliable messaging implemented with a web service client 
that engages the sandesha2
module that sends the message to Synapse and Synapse then forwards the message 
to the target web service.
But this only uses Synapse as a delegate mechanism.
Can somebody tell what the functionality of the WS-Reliability support in 
Synapse is?
Is it just delelgation support or is it an implementation that makes it 
possible to have a client that is unaware of RM and
that Synapse taken care of the RM functionality?

Thanks,

Tijs

van: <t....@chello.nl>
datum: 2006/08/13 Sun PM 11:00:29 MEST
aan: <sy...@ws.apache.org>
onderwerp: Reliable Messaging

Hi there,

I am trying to get the reliable messaging mediator of Synapse to work in my 
example, but I don't succeed.
I am using the <enableRM/> mediator before I am using the send mediator.
The message that is coming is send according to the Sandesha2 examples and is 
also working without Synapse.
But I simply can not get it to work with using Synapse. Can anybody help me 
with an example of how set this up?

Thanks,

Tijs


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




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



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




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




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



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


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



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


Re: Reliable Messaging support

Posted by "Asankha C. Perera" <as...@wso2.com>.
Hi Tijs

There seems to be an issue with the code.. let me take a look into this 
and get back to you

asankha

t.rademakers@chello.nl wrote:
> Hi there,
>
> I have discussed some items about the RM support in Synapse in the user list 
> (see the mailings below).
> Because I am on a short timeframe to make this example with RM work, I hope 
> somebody can help me with this.
> As I said in one of the mails below is that I am currently working on a 
> Enterprise Integration Patterns (Of Hohpe/Woolf) in Action book
> for Manning. For this book me and another author want to display the EIP with 
> Mule and with Synapse.
> I am now working on the guaranteed delivery pattern and I need some help on the 
> RM implementation.
>
> Thanks,
>
> Tijs
>
>
>
>
> Asankha,
>
> Thanks for your reply. I tried your solution with a endpoint element with 
> enableRM.
> It does make the call to the backend service but not over RM.
> I have the following definition:
>
> <synapse xmlns="http://ws.apache.org/ns/synapse">
> <definitions>
> <endpoint name="GroceryEndpoint" address="http://localhost:8081/axis2/services/FastDeliveryService">
> <enableRM/>
> </endpoint>
> </definitions>
> <rules>
> <!-- now log the message using log4j -->
> <in>
> <filter source="get-property('Action')" regex=".*/groceryorder">
> <send>
> <endpoint ref="GroceryEndpoint"/>
> </send>
> </filter>
> </in>
> <out>
> <log level="full"/>
> <send/>
> </out>
> </rules>
> </synapse>
>
> I use the latest version of Synapse from the Subversion repository.
> When I use tcpmon to look at the messages exchanged between synapse and the 
> backend service I can see that no RM related messages
> like createSequence are exchanged, so it just seems to ignore the enableRM 
> element.
> Can you help me with this.
>
> Regards,
>
> Tijs
>
>
>
> Tijs
>
> Please see my comments below
>
> Are you saying that the proxy service with RM for the backend service should 
> already be working?
> Yes, but RM for the backend is not achieved through the proxy services, or 
> the RM mediator - these are for accepting over RM. Sending over RM is achieved 
> through the send mediator, to an "endpoint" where RM is enabled.
>
> If this is so, can you maybe provide me with an example of the Synapse 
> Configuration Language for this?
> Let me explain the background for my question.
> I am working on a Enterprise Integration Patterns (EIP) in Action book that 
> will be published at Manning.
> We are implementing a selection of valuable EIP (of the Hohpe/Woolf book) in 
> this book with messaging based integration with Mule and
> web services integration with Synapse. One of the patterns is guaranteed 
> delivery, so I would like an implementation
> where a client sends a SOAP message to Synapse, and Synapse uses reliable 
> messaging to call the backend service.
> define your endpoint as say
> <endpoint name="myRMendpoint" address="http://...........">
> <enableRM/>
> </endpoint>
>
> ...
> and use it in your rules as
> <send>
> <endpoint ref="myRMendpoint"/>
> </send>
>
> This will send your message over RM to the address defined within your endpoint 
> definition
>
>
> Another question that I have is if there is an interest with some of the 
> developers of the Synapse project to help with
> gathering the necessary information for implementing the EIPs? I think it would 
> also be a valuable asset for the Synapse project if
> it could say that it supports many EIP. 
> Please let us (devs) know about any EIP's on which you need more information, 
> and we will see how best we can help you with this. You should post that to the 
> dev list
>
> asankha
>
> Thanks,
>
> Tijs
>
> van: "Asankha C. Perera" <as...@wso2.com>
> datum: 2006/08/16 Wed AM 07:33:43 CEST
> aan: synapse-user@ws.apache.org
> onderwerp: Re: Reliable Messaging
>
> Tijs
>
> Have you tried creating a proxy service with RM for your backend service 
> instead? The RM mediator is a complex case to implement, as Synapse has 
> to process a message through the RM module after we have accepted it - 
> so I guess it will take a few days for us to complete it. So if proxy 
> services model works for you, it will be easier to use and ready.
>
> asankha
>
> t.rademakers@chello.nl wrote:
> Asankha,
>
> Thanks for the reply.
> It would be great if Saminda could get back to me on this.
> To me it also seems that the RM mediator is not 100% working yet.
> In the last post I states that it was working with Synapse just as a proxy, but 
> that is not right.
> It only works when my client web service is directly communicating with the 
> target web service with Reliable Messaging.
> With Synapse it is just not working.
>
> Thanks,
>
> Tijs
>
>
> Tijs
>
> Sorry for the delay in responding, as some of the members are attending the 
> ApacheCon Asia this week. As far as I know the RM mediator is not 100% 
> completed yet.. let me get Saminda to reply to your email tomorrow, as he was 
> implementing the RM mediator.
>
> asankha
>
> t.rademakers@chello.nl wrote: 
> I hope somebody of the Synapse team can give an answer to question about 
> ReliableMessaging.
> I have an example of reliable messaging implemented with a web service client 
> that engages the sandesha2
> module that sends the message to Synapse and Synapse then forwards the message 
> to the target web service.
> But this only uses Synapse as a delegate mechanism.
> Can somebody tell what the functionality of the WS-Reliability support in 
> Synapse is?
> Is it just delelgation support or is it an implementation that makes it 
> possible to have a client that is unaware of RM and
> that Synapse taken care of the RM functionality?
>
> Thanks,
>
> Tijs
>
> van: <t....@chello.nl>
> datum: 2006/08/13 Sun PM 11:00:29 MEST
> aan: <sy...@ws.apache.org>
> onderwerp: Reliable Messaging
>
> Hi there,
>
> I am trying to get the reliable messaging mediator of Synapse to work in my 
> example, but I don't succeed.
> I am using the <enableRM/> mediator before I am using the send mediator.
> The message that is coming is send according to the Sandesha2 examples and is 
> also working without Synapse.
> But I simply can not get it to work with using Synapse. Can anybody help me 
> with an example of how set this up?
>
> Thanks,
>
> Tijs
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: synapse-user-unsubscribe@ws.apache.org
> For additional commands, e-mail: synapse-user-help@ws.apache.org
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: synapse-user-unsubscribe@ws.apache.org
> For additional commands, e-mail: synapse-user-help@ws.apache.org
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: synapse-user-unsubscribe@ws.apache.org
> For additional commands, e-mail: synapse-user-help@ws.apache.org
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: synapse-user-unsubscribe@ws.apache.org
> For additional commands, e-mail: synapse-user-help@ws.apache.org
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: synapse-user-unsubscribe@ws.apache.org
> For additional commands, e-mail: synapse-user-help@ws.apache.org
>
>
>
> --------------------------------------------------------------------- To 
> unsubscribe, e-mail: synapse-user-unsubscribe@ws.apache.org For additional 
> commands, e-mail: synapse-user-help@ws.apache.org 
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: synapse-user-unsubscribe@ws.apache.org
> For additional commands, e-mail: synapse-user-help@ws.apache.org
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: synapse-dev-unsubscribe@ws.apache.org
> For additional commands, e-mail: synapse-dev-help@ws.apache.org
>
>
>
>   


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