« Return to Thread: Addressing Namespace
ws-addressing-version.patchalexandre_garino wrote:Hi,
I experience a new issue. Let me explain once again what I want to achieve before going deeper.
Components Diagram
SoapUI (as consumer) -- HTTP --> ESB (dealing with WS-Security Specs) -- HTTPS --> Web Service (implemented in .Net)
Issue Description
If I try to consume the web service through the ESB with SoapUI I never get a response from the ESB. The ESB console outputs this kind of message:
2008-04-09 18:50:58,984 [10.130.30.202-ddmorginweb] [HttpClientWorker-1] WARN SynapseCallbackReceiver Synapse received a response for the request with message Id : urn:uuid:f17b562f-a619-42ee-ae61-6c5a0d24bde8 But a callback is not registered (anymore) to process this response
SOAP messages exchanged between components follow:
SOAP Message sent by SoapUI
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
[Not disclosed for security concerns]
</soapenv:Body>
</soapenv:Envelope>
SOAP Message sent by the ESB (WSDoAllSender)
<?xml version='1.0' encoding='utf-8'?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header xmlns:wsa="http://www.w3.org/2005/08/addressing">
<wsa:To>[Not disclosed for security concerns]</wsa:To>
<wsa:MessageID>urn:uuid:6B27C12D9152A7EA33692465354606522-515329868</wsa:MessageID>
<wsa:Action>[Not disclosed for security concerns]</wsa:Action>
</soapenv:Header>
<soapenv:Body>
[Not disclosed for security concerns]
</soapenv:Body>
</soapenv:Envelope>
SOAP Message sent by the ESB (Rampart)
<?xml version='1.0' encoding='utf-8'?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header xmlns:wsa="http://www.w3.org/2005/08/addressing">
<wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" soapenv:mustUnderstand="1">
<wsu:Timestamp xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="Timestamp-3853415">
<wsu:Created>2008-04-09T15:50:57.062Z</wsu:Created>
<wsu:Expires>2008-04-09T15:55:57.062Z</wsu:Expires>
</wsu:Timestamp>
<wsse:UsernameToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="UsernameToken-27471524">
<wsse:Username>[Not disclosed for security concerns]</wsse:Username>
<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">[Not disclosed for security concerns]</wsse:Password>
<wsse:Nonce>GT9CvQZckbZSBtKNJabPMg==</wsse:Nonce>
<wsu:Created>2008-04-09T15:50:57Z</wsu:Created>
</wsse:UsernameToken>
</wsse:Security>
<wsa:To>[Not disclosed for security concerns]</wsa:To>
<wsa:MessageID>urn:uuid:6B27C12D9152A7EA33692465354606522-515329868</wsa:MessageID>
<wsa:Action>[Not disclosed for security concerns]</wsa:Action>
</soapenv:Header>
<soapenv:Body>
[Not disclosed for security concerns]
</soapenv:Body>
</soapenv:Envelope>
SOAP Message received by the ESB (Rampart)
<?xml version='1.0' encoding='utf-8'?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soap:Header>
<wsa:Action>[Not disclosed for security concerns]</wsa:Action>
<wsa:MessageID>urn:uuid:2ad8950e-48a5-4a74-8d99-ad76cc7fc74c</wsa:MessageID>
<wsa:RelatesTo>urn:uuid:f17b562f-a619-42ee-ae61-6c5a0d24bde8</wsa:RelatesTo>
<wsa:To>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:To>
<wsse:Security>
<wsu:Timestamp wsu:Id="Timestamp-f045a341-b821-4a80-a806-6bebad91c4ef">
<wsu:Created>2008-04-09T15:52:55Z</wsu:Created>
<wsu:Expires>2008-04-09T15:57:55Z</wsu:Expires>
</wsu:Timestamp>
</wsse:Security>
</soap:Header>
<soap:Body>
[Not disclosed for security concerns]
</soap:Body>
</soap:Envelope>
SOAP Message received by the ESB (WSDoAllReceiver)
<?xml version='1.0' encoding='utf-8'?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soap:Header>
<wsa:Action>[Not disclosed for security concerns]</wsa:Action>
<wsa:MessageID>urn:uuid:2ad8950e-48a5-4a74-8d99-ad76cc7fc74c</wsa:MessageID>
<wsa:RelatesTo>urn:uuid:f17b562f-a619-42ee-ae61-6c5a0d24bde8</wsa:RelatesTo>
<wsa:To>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:To>
<wsse:Security>
<wsu:Timestamp wsu:Id="Timestamp-f045a341-b821-4a80-a806-6bebad91c4ef">
<wsu:Created>2008-04-09T15:52:55Z</wsu:Created>
<wsu:Expires>2008-04-09T15:57:55Z</wsu:Expires>
</wsu:Timestamp>
</wsse:Security>
</soap:Header>
<soap:Body>
[Not disclosed for security concerns]
</soap:Body>
</soap:Envelope>
SOAP Message received by SoapUI
None
Leads
I noticed that the .net web service (proprietary) fills the RelatesTo element with a new UUID, I suppose that a valid ID should be the MessageID element sent by Rampart. So the ESB can't find the callback related to and this is why SoapUI never gets back the response.
I implemented a .Net client in order to trace messages exchanged.
Request
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<soap:Header>
<wsa:Action>[Not disclosed for security concerns]</wsa:Action>
<wsa:MessageID>urn:uuid:e27c9c99-1488-45f7-9992-f76e70769908</wsa:MessageID>
<wsa:ReplyTo>
<wsa:Address>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:Address>
</wsa:ReplyTo>
<wsa:To>[Not disclosed for security concerns]</wsa:To>
<wsse:Security soap:mustUnderstand="1">
<wsu:Timestamp wsu:Id="Timestamp-2943ec42-b0d1-4853-a2c5-a97caa3bd946">
<wsu:Created>2008-04-10T08:36:11Z</wsu:Created>
<wsu:Expires>2008-04-10T08:41:11Z</wsu:Expires>
</wsu:Timestamp>
<wsse:UsernameToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="SecurityToken-f1f7951a-ea82-4a41-8627-72dd9aa7be0c">
<wsse:Username>********</wsse:Username>
<wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">********</wsse:Password>
<wsse:Nonce>RBjvPCovI6C7M8VNct15KQ==</wsse:Nonce>
<wsu:Created>2008-04-10T08:36:11Z</wsu:Created>
</wsse:UsernameToken>
</wsse:Security>
</soap:Header>
<soap:Body>
[Not disclosed for security concerns]
</soap:Body>
</soap:Envelope>
Response
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<soap:Header>
<wsa:Action>[Not disclosed for security concerns]</wsa:Action>
<wsa:MessageID>urn:uuid:a51b94d7-998e-4bd2-b641-834b437ccf03</wsa:MessageID>
<wsa:RelatesTo>urn:uuid:e27c9c99-1488-45f7-9992-f76e70769908</wsa:RelatesTo>
<wsa:To>http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anonymous</wsa:To>
<wsse:Security>
<wsu:Timestamp wsu:Id="Timestamp-dc029518-1378-438c-81ad-49dd1ff66d1c">
<wsu:Created>2008-04-10T08:38:08Z</wsu:Created>
<wsu:Expires>2008-04-10T08:43:08Z</wsu:Expires>
</wsu:Timestamp>
</wsse:Security>
</soap:Header>
<soap:Body>
[Not disclosed for security concerns]
</soap:Body>
</soap:Envelope>
As we can see, the RelatesTo element is correct when I concume the web service from a .net client. After many tests I know that the issue is related to the namespace used for addressing. The request should utilize http://schemas.xmlsoap.org/ws/2004/08/addressing instead of http://www.w3.org/2005/08/addressing.
Consequently the question resolving this issue is: How do i do to change the namespace by the correct one for each request sent by the ESB (and for this specific proxy if possible)? Could I enforce the addressing namespace via the WS-Policy file?
Regards,
Alexandre
« Return to Thread: Addressing Namespace
| Free embeddable forum powered by Nabble | Forum Help |