Mino
Mino

Reputation: 635

.net webservice in soap. Server did not recognize the value of HTTP Header SOAPAction

I'm writing a .net webservice that will be cosumed by a java program. I get this error:

System.Web.Services.Protocols.SoapException: Server did not recognize the value of HTTP Header SOAPAction: . at System.Web.Services.Protocols.Soap11ServerProtocolHelper.RouteRequest() at System.Web.Services.Protocols.SoapServerProtocol.RouteRequest(SoapServerMessage message) at System.Web.Services.Protocols.SoapServerProtocol.Initialize() at System.Web.Services.Protocols.ServerProtocol.SetContext(Type type, HttpContext context, HttpRequest request, HttpResponse response) at System.Web.Services.Protocols.ServerProtocolFactory.Create(Type type, HttpContext context, HttpRequest request, HttpResponse response, Boolean& abortProcessing)

Do you know what does it mean? I've searched a lot, but can't find the solution!

Upvotes: 0

Views: 1517

Answers (1)

auo
auo

Reputation: 572

.Net WCF will automaticly encode both the header and the message, and java doesn't encode the header. The header doesn't match then since one is encoded and the oter one isn't.

So you have to turn of the

                Client prxy = new Client("BindingName");
            prxy.Endpoint.Contract.ProtectionLevel  =System.Net.Security.ProtectionLevel.Sign;
            prxy.Open();

I hope this helps, and I don't think you can do it in the config file so you have to do it in the code. Gl!

This was for a .Net client, sorry. But you may get something from it!

Msdn, how to set the protectionlevel of a service

Upvotes: 1

Related Questions