Hi Eoghan,

  see in lined comments below:

Richard

Eoghan Glynn wrote:
Hi Richard,

Apologies for the delay in replying.
NP
Please see my comments in-line.

2009/6/15 Richard Opalka <ropa...@redhat.com>:
 what's the current state of CXF WS-RM?

See below.

I'm asking because we'd like to integrate probably
WS-RM in our JBossWS CXF integration.

Great that you're thinking of using CXF WS-RM.

The main questions are:
* Which WS-RM specs are supported now (I know about 1.0, is 1.1 supported
already)?

Only WS-RM 1.0 (2005/02) is supported as yet. This was the current
version of the spec when the original RM implementation was done as
part of the Celtix project (the precursor to CXF).

We've had some interest in WS-RM 1.1 and I intend to do a costing on
the implementation effort soon, and hopefully will get the time to
implement support for it in the CXF 2.3 timeframe.
IMHO WS-RM 1.1 is the right way to do WS-RM, because this spec.
addresses unacknowledged anonymous messages use case (see WS-MakeConnection)
This usecase wasn't addressed in WS-RM 1.0 and so I consider
this old RM spec. broken.
* Is QoS (Quality of Service) ensured in CXF WS-RM implementation?

Well yes, in so far as the qualities of service envisaged by the WS-RM
spec as concerned. So for example the policy with regard to ordering
and duplicates may be asserted via the
/ws-rm-policy:RMAssertion/ws-rm:deliveryAssurance element in config
(see schema[1]).

However other QoS typically available in the MOM world, such as
message expiration/TTL and priority, are not part of WS-RM.
I'm asking about 2.4 Delivery Assurances (see WS-RX 1.1 specification)
Thus I consider you respond "yes" from this point of view ;)
* Is current CXF WS-RM implementation tightly coupled with Endpoint?

Well, CXF WS-RM can be configured on a per-endpoint basis, or for the
entire Bus.
I don't see the relevant source code for CXF bus integration?
Could you give me the pointer to impl or test?
However, internally the WS-RM layer creates an RMEndpoint for each
org.apache.cxf.endpoint.Endpoint with which a reliable exchange
occurs.

So that sense there is a certain one-to-one-ness going on. Is that
what you meant by being tightly coupled?

Or were you more thinking of using WS-RM to mediate message exchanges
with something other than CXF endpoints?
And how is the integration with other WS-* technologies?
I mean do CXF WS-RM support e.g. WS-RM with WS-Security?

* Is there some API for client side when receiving undelivered messages?

By undelivered messages, do you mean un-acknowledged messages that
have been resent?

If the original client is still running, then the retransmitted
response message will be delivered to the application in the normal
way (either by virtue of the invoking client thread being blocked, or
via a callback or pollable for an asynchronous invocation).
If I have two RM responses comming from the server (I mean RM responses with real SOAP response). How this is handled? User should take care of that there can be more than just one async SOAP response?
What if client will use synchronous JAX-WS api?
However, if the client application has been restarted since the
original request was sent, then there is no way currently for the
resent message to rendez-vous with the application logic. This
deficiency was clear to us when the original RM implementation was
done, and we had at the back of our mind the intention to do something
about it, via some sort of persistent callback mechanism. Any ideas
you might have in this regard would be welcome.
Well this should be addressed in JAX-WS spec otherwise this would leave to proprietary client side API for manipulating the client RM store. Let's see what will come out with next metro release. AFAIK
the Sun folks are working on RM 1.1 at the moment there.
Where I could find it?
* Is there some detailed architecture documentation about CXF WS-RM?

No, unfortunately.
Hmm :(
Hope this helps,
Eoghan

[1] 
http://svn.apache.org/repos/asf/cxf/trunk/rt/ws/rm/src/main/resources/schemas/configuration/wsrm-manager-types.xsd


--
Richard Opalka
JBoss Software Engineer

Mail: ropa...@redhat.com
Mobile: +420 731 186 942

Reply via email to