-----Original Message----- Sent: Friday, July 14, 2006 9:37 AM To: [email protected]
Please help if you can. I'm trying to set up a web service and I'm having problems with the security validation for our client. The web service works fine for our test web client, which is written in Java and run using the axis toolkit. Our client uses .NET as their web client and reciprical web service. When our client tries the web service they receive an error Error logged by the Supplier Outbound Interface in xmlSupplierOutboundService_MessageArrived. Error was WSDoAllReceiver: Request does not contain required Security header When we run the web service using the web client we have, everything is fine. The only thing I've been able to find different are WSRP: tags and that the WSSE: and WSU: namespaces are different. I think that it's the different namepsaces that are causing the problem. I've been searching the web, but been unable to find anything that helps me alter the Axis namespaces. I'm sure it can be done, the WSS4J examples all seem to use the alternative, but I just don't know how this can be done. Could someone please let me know how to configure Axis to use the alternative namespaces. Our Environment is Linux (Red Hat Linux Advanced Server release 2.1AS (Pensacola); kernel version 2.4.9-e.27smp) Apache HTTP 1.3 Apache Tomcat 4.1.31 Apache Axis 1.3 WSS4j 1.1.0 (tried 1.5 first, but this didn't have the alternatives in WSConstants) The client environment is .NET / WSE 1.0 The Server WSDD is <deployment xmlns="http://xml.apache.org/axis/wsdd/" xmlns:java="http://xml.apache.org/axis/wsdd/providers/java"> <service name="SiebelSOAP" provider="java:RPC" style="document" use="literal"> <requestFlow> <handler type="java:org.apache.ws.axis.security.WSDoAllReceiver"> <parameter name="action" value="Timestamp UsernameToken"/> <parameter name="user" value="UserName"/> <parameter name="passwordType" value="PasswordText" /> <parameter name="passwordCallbackClass" value="ourcompany.b2b.client.ws.client.PWCallback"/> <parameter name="addUTElements" value="Nonce Created"/> </handler> </requestFlow> <parameter name="className" value="ourcompany.b2b.client.ws.OurSOAPService"/> <parameter name="allowedMethods" value="receiveXMLDocument"/> <parameter name="scope" value="application"/> </service> </deployment> The Client .NET SOAP Message is <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soap:Header> <wsrp:path soap:actor="http://schemas.xmlsoap.org/soap/actor/next" soap:mustUnderstand="1" xmlns:wsrp="http://schemas.xmlsoap.org/rp"> <wsrp:action> http://www.client.com/CLIENT/PassXMLDocument </wsrp:action> <wsrp:to> https://OurServer/axis/services/OurSOAPService </wsrp:to> <wsrp:id> uuid:131f35ce-433f-47a9-aa16-237921ed50d4 </wsrp:id> </wsrp:path> <wsu:Timestamp xmlns:wsu="http://schemas.xmlsoap.org/ws/2002/07/utility"> <wsu:Created> 2006-07-07T15:06:12Z </wsu:Created> <wsu:Expires> 2006-07-07T15:11:12Z </wsu:Expires> </wsu:Timestamp> <wsse:Security soap:mustUnderstand="1" xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/07/secext"> <wsse:UsernameToken wsu:Id="SecurityToken-5b2d064c-f98c-402d-b263-6087f0cab72c" xmlns:wsu="http://schemas.xmlsoap.org/ws/2002/07/utility"> <wsse:Username> UserName </wsse:Username> <wsse:Password Type="wsse:PasswordText"> Password </wsse:Password> <wsse:Nonce> VDQmAV8uqT6z8zcxC1V75w== </wsse:Nonce> <wsu:Created> 2006-07-07T15:06:12Z </wsu:Created> </wsse:UsernameToken> </wsse:Security> </soap:Header> <soap:Body> <PassXMLDocument xmlns="http://www.client.com/CLIENT/"> <xmlDocument> <?xml version="1.0" ?>< (rest of XML data document ... ) </xmlDocument> </PassXMLDocument> </soap:Body> </soap:Envelope> The SOAP Message generated by our client is <?xml version="1.0" encoding="UTF-8"?> <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <soapenv:Header> <wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wsse curity-secext-1.0.xsd" soapenv:mustUnderstand="1"> <wsse:UsernameToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssec urity-utility-1.0.xsd" wsu:Id="UsernameToken-1725467642"> <wsse:Username> UserName </wsse:Username> <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-t oken-profile-1.0#PasswordText"> Password </wsse:Password> <wsse:Nonce>TvzcnguhUyPrGmKUd/4uxg==</wsse:Nonce> <wsu:Created>2006-07-10T11:18:29.272Z</wsu:Created> </wsse:UsernameToken> <wsu:Timestamp xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssec urity-utility-1.0.xsd" wsu:Id="Timestamp-134106106"> <wsu:Created>2006-07-10T11:18:29.009Z</wsu:Created> <wsu:Expires>2006-07-10T11:23:29.009Z</wsu:Expires> </wsu:Timestamp> </wsse:Security> </soapenv:Header> <soapenv:Body> <xmlData xmlns="http://ws.rsa.b2b.signet"><?xml version="1.0"?>< (rest of XML data document ... ) </xmlData> </soapenv:Body> </soapenv:Envelope> Any help greatly appreciated. Regards, Ian Kirby ***************************************************************************** This E-mail and any files transmitted with it is intended for the use of the addressee only and may contain confidential information. If you are not the intended recipient you are hereby notified that any use or dissemination of this communication is strictly prohibited. If you receive this transmission in error, please notify us immediately and delete this e-mail. The views and opinions expressed in this e-mail message are the author's own and may not reflect the views and opinions of Signet Group plc or any of its subsidiaries. *************************************************************************** --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
