My C# client (.dotNet 2.0 and WSE 3.0) generated the following SOAP
message.
<?xml version='1.0' encoding='utf-8'?>
<soap:Envelop e
xmlns:wsse="htt p://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
xmlns:wsa="http ://schemas.xmlsoap .org/ws/2004/08/addressing"
xmlns:xsi="http ://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http ://www.w3.org/2001/XMLSchema"
xmlns:xop="http ://www.w3.org/2004/08/xop/include"
xmlns:soap="htt p://schemas.xmlsoap .org/soap/envelope/"
xmlns:wsu="http ://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<soap:Header>
<wsa:Action />
<wsa:MessageI D>
urn:uuid:8a8309 c1-a21d-48ff-aa52-2647bb377cfc
</wsa:MessageID>
<wsa:ReplyTo>
<wsa:Address>
http://schemas.xmlsoap.org/ws/2004/0...role/anonymous
</wsa:Address>
</wsa:ReplyTo>
<wsa:To>
http://localhost:8080/axis2/services/CMBWebService
</wsa:To>
<wsse:Securit y>
<wsu:Timestam p
wsu:Id="Timesta mp-010f1103-934c-44fb-8778-1251c874e66e">
<wsu:Created>20 06-09-20T23:12:21Z</wsu:Created>
<wsu:Expires>20 06-09-20T23:17:21Z</wsu:Expires>
</wsu:Timestamp>
</wsse:Security>
</soap:Header>
<soap:Body>
<MyAppRequest >
....
</MyAppRequest>
</soap:Body>
</soap:Envelope>
The reply message from Axis2 server is
<?xml version='1.0' encoding='utf-8'?>
<soapenv:Envelo pe
xmlns:soapenv=" http://schemas.xmlsoap .org/soap/envelope/">
<soapenv:Head er />
<soapenv:Body >
<MyAppReply>
....
</MyAppReply>
</soapenv:Body>
</soapenv:Envelop e>
The C# client encountered this exception
Unhandled Exception:
Microsoft.Web.S ervices3.Addres sing.Addressing Fault: Message Information
Header Required ---Micros
oft.Web.Service s3.Addressing.A ddressingFormat Exception: WSE202: The
Action header is required when other address headers
are present.
--- End of inner exception stack trace ---
at Microsoft.Web.S ervices3.Addres sing.Addressing Headers.CheckVa lid()
at
Microsoft.Web.S ervices3.Addres sing.Addressing Headers.Load(So apEnvelope
envelope)
at Microsoft.Web.S ervices3.SoapEn velope.PostLoad (Boolean
loadAddressing)
at Microsoft.Web.S ervices3.SoapEn velope.PostLoad ()
at Microsoft.Web.S ervices3.SoapEn velope.Load(Xml Reader reader)
at Microsoft.Web.S ervices3.Mime.X opDocument.Load StartPart(MimeP art
startPart)
at
Microsoft.Web.S ervices3.Mime.X opDocument.Load FromXopPackage( String
contentType, Stream stream)
at
Microsoft.Web.S ervices3.Xml.So apEnvelopeReade rWrapper..ctor( SoapClientMessa ge message, String messageContentT ype)
at
Microsoft.Web.S ervices3.WebSer vicesClientProt ocol.GetReaderF orMessage(SoapC lientMessage message, Int32 bufferSize)
at
System.Web.Serv ices.Protocols. SoapHttpClientP rotocol.ReadRes ponse(SoapClien tMessage message, WebResponse response,
Stream responseStream, Boolean asyncCall)
at
System.Web.Serv ices.Protocols. SoapHttpClientP rotocol.Invoke( String
methodName, Object[] parameters)
I guess it's about some configuration on client side or server side.
Can someone tell me what the fix is?
Thanks in advance,
vick