#3 still hasn't been discussed though. I'd still like hear to from others on how to best support decoupled endpoints over ESB transports (JBI, Mule, and the like).

- Dan

Daniel Kulp wrote:
The quick executive summary is:
1) It's not a problem.  The implementation is OK to do this.   It's not 
optimal, but OK.  Issue created:
  https://issues.apache.org/jira/browse/CXF-981

That was the point of the discussion.  We were trying to figure out if 
the issue is enough to warrant delaying 2.0.2.   The answer is no.


2) For code first cases (no wsdl policy extensors) adding the 
feature/interceptors should be enough to enable WS-A.   (Usability 
issue)   However, the user then takes on the responsibility of making 
sure the server will actually be OK with WS-A.     Any more thoughts on 
this?

Dan


On Friday 07 September 2007, Glynn, Eoghan wrote:
  
FYI sorted out on IRC, see http://dev.rectang.com/logs/codehaus/%23cxf

Cheers,
Eoghan

    
-----Original Message-----
From: Dan Diephouse [mailto:[EMAIL PROTECTED]]
Sent: 06 September 2007 16:56
To: [email protected]
Subject: WS-Addressing Issues

I'm having some issues getting WS-A to work for me.

First, it seems that adding the WSAddressingFeature isn't
enough to get WS-A to be turned on. You have to set the
"usingAddressingAdvisory"
property which is cryptic at best. Why isn't adding the
interceptors to the client enough for it to start sending
WS-A headers? Why would we want it turned off by default?

Second, I'm running the WS-A sample and it appears to be
sending two soap messages to the client - one partial
response and one decoupled message. From the logs:

INFO: Outbound Message
--------------------------------------
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:H
eader><MessageID
xmlns="http://www.w3.org/2005/08/addressing">urn:uuid:9bd2e4c4
-cca0-478d-bc81-a57e92b9c1c4</MessageID><To
xmlns="http://www.w3.org/2005/08/addressing">http://localhost:
9000/SoapContext/SoapPort</To><ReplyTo
xmlns="http://www.w3.org/2005/08/addressing"><Address>http://l
ocalhost:9990/decoupled_endpoint</Address></ReplyTo><FaultTo
xmlns="http://www.w3.org/2005/08/addressing"><Address>http://l
ocalhost:9990/decoupled_endpoint</Address></FaultTo></soap:Hea
der><soap:Body><sayHi
xmlns="http://apache.org/hello_world_soap_http/types"/></soap:
Body></soap:Envelope>
--------------------------------------
...
INFO: Inbound Message
--------------------------------------
Headers: {null=[HTTP/1.1 202 Accepted], connection=[close],
SOAPAction=[""], Server=[Jetty(6.1.5)],
content-type=[text/xml; charset=utf-8]}
Message:
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:H
eader><MessageID
xmlns="http://www.w3.org/2005/08/addressing">urn:uuid:d15fa093
-3951-47f5-86ac-bd616f8d57d7</MessageID><To
xmlns="http://www.w3.org/2005/08/addressing">http://www.w3.org
/2005/08/addressing/anonymous</To><ReplyTo
xmlns="http://www.w3.org/2005/08/addressing"><Address>http://w
ww.w3.org/2005/08/addressing/none</Address></ReplyTo></soap:He
ader><soap:Body /></soap:Envelope>
--------------------------------------
...Eoghan  
      

  
-----Original Message-----
From: Dan Diephouse [mailto:[EMAIL PROTECTED]] 
Sent: 06 September 2007 16:56
To: [email protected]
Subject: WS-Addressing Issues

I'm having some issues getting WS-A to work for me.

    
INFO: Inbound Message
--------------------------------------
Encoding: UTF-8
Headers: {Host=[localhost:9990], User-Agent=[Java/1.5.0_10],
connection=[keep-alive], SOAPAction=[""],
transfer-encoding=[chunked], Pragma=[no-cache],
content-type=[text/xml; charset=UTF-8],
Cache-Control=[no-cache], Accept=[*]}
Message:
<soap:Envelope
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:H
eader><MessageID
xmlns="http://www.w3.org/2005/08/addressing">urn:uuid:9e2a0281
-dcea-42b5-b5a9-a89e265d40de</MessageID><To
xmlns="http://www.w3.org/2005/08/addressing">http://localhost:
9990/decoupled_endpoint</To><RelatesTo
xmlns="http://www.w3.org/2005/08/addressing">urn:uuid:9bd2e4c4
-cca0-478d-bc81-a57e92b9c1c4</RelatesTo></soap:Header><soap:Bo
dy><sayHiResponse
xmlns="http://apache.org/hello_world_soap_http/types"><respons
eType>Bonjour</responseType></sayHiResponse></soap:Body></soap

:Envelope>

--------------------------------------


Is this correct? I thought the first http response should be
empty and
we should only be sending the second message.

Last, I'm trying to write a different HTTP conduit and
destination. I.e.
one that uses Mule. I think this issue applies to our JBI
transport as
well. In both the JBI & Mule cases (or any other ESB), you
want to send
messages to the bus instead of to our transport layer. The
bus can then
send out the messages via it's transport layer. The issue is
this - our
decoupled endpoint stuff is baked into the transport, which
it needs to
be rebaked into the Mule/JBI transports as well. Its not
exactly trivial
to do either, I'm still struggling to figure it out. But to expand
my previous points on why decoupling in the transport is a BAD thing
here
are some other reasons:
- Setting up a decoupled endpoint for CXF will be completely
different
depending on whether or not your in an ESB environment or not. In
one case I have to use <http:conduit> to set the DecoupledEndpoint,
in another <mule:conduit>, in another <jbi:conduit> (which
doesn't support
decoupled interactions right now), etc. It'd be much much
better to have
this configuration associated with the client.
- Now any ESB transport needs to take care of setting the
appropriate HTTP statuses on the messages.
- I have to copy the InteroposedMessageObserver & decoupled
Destination
logic to my conduit
- I'm probably going to end up with a bunch of if(http) logic in my
transport to handle back channel stuff.
Am I missing something here? This seems way harder than it
should be...
Have any of the servicemix people looked at this yet?

Regards,
- Dan

--
Dan Diephouse
MuleSource
http://mulesource.com | http://netzooid.com/blog
      
----------------------------
IONA Technologies PLC (registered in Ireland)
Registered Number: 171387
Registered Address: The IONA Building, Shelbourne Road, Dublin 4,
Ireland
    



  


-- 
Dan Diephouse
MuleSource
http://mulesource.com | http://netzooid.com/blog

Reply via email to