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

Akitoshi Yoshida commented on CXF-6323:
---------------------------------------

I have a code that I prepared for CXF-4209 but it was for 2.7.x for that time.
At that time, Dennis and I were updating the ws/rm code and I postponed to 
integrate this patch to avoid any conflicts.

I wanted to update the code for 3.1.x/3.0.x, but there are many changes in 
ws/rm and an automatic merge didn't work.

Recently, one of my colleagues has looked at the code and could merge the 
change locally, so he could upload this patch to CXF-4209. The limitation of 
this code is that the RMStore's transaction behavior isn't changed. So you 
cannot couple the backend transaction with the RMStore's even if they use the 
same DB. So, this means, your backend may be invoked more than once if the 
system goes down between the successful invocation of the backend service and 
the RMStore update. I'll ask him today.

@Jim,
When the message is already stored in DS, the client likely has got the ACK. In 
that case, the server doesn't need to send any ACK. If the client hasn't got 
it, the client will resend the message and will get the ack from the recovered 
DS. Does this make sense? Maybe I am not exactly following your concern.



> WS-RM redelivery not implemented
> --------------------------------
>
>                 Key: CXF-6323
>                 URL: https://issues.apache.org/jira/browse/CXF-6323
>             Project: CXF
>          Issue Type: Bug
>          Components: WS-* Components
>    Affects Versions: 2.7.14, 3.0.4
>            Reporter: Jochen Riedlinger
>
> We build an application based on CXF using WS-RM.
> Since we have/had some issues I tried with 2.7.14 and 3.0.4.
> After the baisc things worked we tested the reliability of the WS-RM 
> implementation and crashed the application after the message was put in the 
> store.
> I expected that the application-server tries to redeliver the message after 
> restart. Unfortunately that never happens.
> Debugging the problem and taking a look into the source code I found that 
> code (in org.apache.cxf.ws.rm.RMManager):
> {code:java}
> private void reconverDestinationSequence(Endpoint endpoint, Conduit conduit, 
> Destination d, 
>                                              DestinationSequence ds) {
>         d.addSequence(ds, false);
>         //TODO add the redelivery code
>     }
> {code}
> It would be nice if someone could correct/implement this;-)
> Befor that you the WS-RM implementation is not reliable.;-)



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

Reply via email to