Re: Sandesha2 question?

David Parsons1 <[email protected]> Fri, 23 Jul 2010 12:17:19 +0100
Newsgroups gmane.comp.apache.webservices.fx.devel
Message-ID <OF99696392.3DFC1184-ON80257769.003810D3-80257769.003E036A@uk.ibm.com>
--=_alternative 003E010D80257769_=
Content-Type: text/plain; charset="US-ASCII"

Hi,

The lastMessage property isn't saying to the Sandesha Handler wait for the 
last message before delivering any of the messages on that sequence to the 
client or service.  All it is saying to Sandesha is that there will be no 
more messages sent on this sequence so you can terminate it.  It is just 
there for sequence administration.  One thing you can do is set the 
inorder property.  This tells the Sandesha handler to deliver the messages 
that have arrived in the order they were originally sent by the client. 
Therefore if message 1 & 3 have arrived but not message 2, Sandesha would 
have the service invoked by message 1 but not message 3.  It would hold 
onto message 3 until msg 2 had arrived and been invoked.

If you want all or nothing you either need to trust sandesha i.e. that all 
the messages will get sent.  One drawback of this is that your have to 
rely on the server hosting your service to always be available, that way 
the resending of lost messages is handled for you.  Or you switch to 
having some transactional solution.

I have an article that has some early sections that may be of interest. 
The sections that may be of interest talk about what WS-RM is and the key 
concepts that it uses, 
http://www.ibm.com/developerworks/websphere/library/techarticles/0912_parsons/0912_parsons.html

Regards,

Dave

Dave Parsons
Web Services Development
INTERNAL:  David Parsons1/UK/IBM@IBMGB :: DE3F20 :: 246930
EXTERNAL:  [email protected] :: (01962) 816930
Mail Point 211, IBM Hursley Park, Winchester. SO21 2JN




From:
venkov <[email protected]>
To:
[email protected]
Date:
23/07/2010 10:20
Subject:
Sandesha2 question?




How does Exactly-once option of WSRM works?

I am using the ping sample from sandesha2
where it sends 3 messages and the 3rd is set to be last!
after it gets the 3rd one it terminates the sequence and everything is ok!

But if i remove the last message property or 
before i send the last one i terminate the program!

I have the following situation the server gets first and second message,
execute the action for each one, without waiting for the last message!

I want to execute all or nothing!
-- 
View this message in context: 
http://old.nabble.com/Sandesha2-question--tp29245485p29245485.html
Sent from the Apache Sandesha mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]









Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number 
741598. 
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU






--=_alternative 003E010D80257769_=
Content-Type: text/html; charset="US-ASCII"


<br><font size=2 face="sans-serif">Hi,</font>
<br>
<br><font size=2 face="sans-serif">The lastMessage property isn't saying
to the Sandesha Handler wait for the last message before delivering any
of the messages on that sequence to the client or service. &nbsp;All it
is saying to Sandesha is that there will be no more messages sent on this
sequence so you can terminate it. &nbsp;It is just there for sequence administration.
&nbsp;One thing you can do is set the inorder property. &nbsp;This tells
the Sandesha handler to deliver the messages that have arrived in the order
they were originally sent by the client. &nbsp;Therefore if message 1 &amp;
3 have arrived but not message 2, Sandesha would have the service invoked
by message 1 but not message 3. &nbsp;It would hold onto message 3 until
msg 2 had arrived and been invoked.</font>
<br>
<br><font size=2 face="sans-serif">If you want all or nothing you either
need to trust sandesha i.e. that all the messages will get sent. &nbsp;One
drawback of this is that your have to rely on the server hosting your service
to always be available, that way the resending of lost messages is handled
for you. &nbsp;Or you switch to having some transactional solution.</font>
<br>
<br><font size=2 face="sans-serif">I have an article that has some early
sections that may be of interest. &nbsp;The sections that may be of interest
talk about what WS-RM is and the key concepts that it uses, </font><a href=http://www.ibm.com/developerworks/websphere/library/techarticles/0912_parsons/0912_parsons.html><font size=2 face="sans-serif">http://www.ibm.com/developerworks/websphere/library/techarticles/0912_parsons/0912_parsons.html</font></a>
<br>
<br><font size=2 face="sans-serif">Regards,</font>
<br>
<br><font size=2 face="sans-serif">Dave</font>
<br>
<br><font size=2 face="sans-serif">Dave Parsons<br>
Web Services Development<br>
INTERNAL: &nbsp;David Parsons1/UK/IBM@IBMGB :: DE3F20 :: 246930<br>
EXTERNAL: &nbsp;[email protected] :: (01962) 816930<br>
Mail Point 211, IBM Hursley Park, Winchester. SO21 2JN<br>
</font>
<br>
<br>
<br>
<table width=100%>
<tr valign=top>
<td><font size=1 color=#5f5f5f face="sans-serif">From:</font>
<td><font size=1 face="sans-serif">venkov &lt;[email protected]&gt;</font>
<tr valign=top>
<td><font size=1 color=#5f5f5f face="sans-serif">To:</font>
<td><font size=1 face="sans-serif">[email protected]</font>
<tr valign=top>
<td><font size=1 color=#5f5f5f face="sans-serif">Date:</font>
<td><font size=1 face="sans-serif">23/07/2010 10:20</font>
<tr valign=top>
<td><font size=1 color=#5f5f5f face="sans-serif">Subject:</font>
<td><font size=1 face="sans-serif">Sandesha2 question?</font></table>
<br>
<hr noshade>
<br>
<br>
<br><tt><font size=2><br>
How does Exactly-once option of WSRM works?<br>
<br>
I am using the ping sample from sandesha2<br>
where it sends 3 messages and the 3rd is set to be last!<br>
after it gets the 3rd one it terminates the sequence and everything is
ok!<br>
<br>
But if i remove the last message property or <br>
before i send the last one i terminate the program!<br>
<br>
I have the following situation the server gets first and second message,<br>
execute the action for each one, without waiting for the last message!<br>
<br>
I want to execute all or nothing!<br>
-- <br>
View this message in context: </font></tt><a href="http://old.nabble.com/Sandesha2-question--tp29245485p29245485.html"><tt><font size=2>http://old.nabble.com/Sandesha2-question--tp29245485p29245485.html</font></tt></a><tt><font size=2><br>
Sent from the Apache Sandesha mailing list archive at Nabble.com.<br>
<br>
<br>
---------------------------------------------------------------------<br>
To unsubscribe, e-mail: [email protected]<br>
For additional commands, e-mail: [email protected]<br>
<br>
</font></tt>
<br>
<br><font size=2 face="sans-serif"><br>
</font>
<br><font size=2 face="sans-serif"><br>
</font>
<hr><font size=2 face="sans-serif"><br>
<i><br>
</i></font>
<p><font size=2 face="sans-serif"><i>Unless stated otherwise above:<br>
IBM United Kingdom Limited - Registered in England and Wales with number
741598. <br>
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6
3AU</i></font>
<p><font size=2 face="sans-serif"><br>
<br>
</font>
<br>
<br><font size=2 face="sans-serif"><br>
</font>
--=_alternative 003E010D80257769_=--