On Mon February 2 2009 7:01:26 am Adrian C wrote: > Hi, > > Can someone clarify how CXF works with WS-A? I had some unexpected results > where a client was calling our web services with two different SOAP actions > (one on the transport headers, http in this case, the other in the WSA > headers).
Hmm... That's not good. I checked the WS-Addressing code and the validateIncomingMAPs method should be checking that the two actions are equal and throwing a fault if they aren't. Any chance you can hook up a debugger and make sure that method is getting called? > The WS-A header as it turned out was incorrect however the > correct operation was called? How can this be? I would have though the the > following would happen: > > 1. Check for ws-a headers & soap action there Technically, this SHOULD be irrelevant as the two actions should be identical. The check in MAPAggregator.validateIncomingMAPs should guarantee that. The first step is to make sure that is called. Dan > 2. If no ws-a headers & soap action check for SOAP action in the transport > headers > 3. If no action present use the contents of the SOAP:Body to determine what > operation to invoke. > > So can anyone clarify? > > Thanks. -- Daniel Kulp [email protected] http://www.dankulp.com/blog
