.NET WCF客户端和Java SOAP服务错误
我正在使用.NETWCF客户端连接到SOAP服务(在Java上实现)。使用客户端证书身份验证。以下是绑定配置代码:.NET WCF客户端和Java SOAP服务错误,java,.net,wcf,soap,Java,.net,Wcf,Soap,我正在使用.NETWCF客户端连接到SOAP服务(在Java上实现)。使用客户端证书身份验证。以下是绑定配置代码: var binding = new BasicHttpBinding { Security = new BasicHttpSecurity { Mode = BasicHttpSecurityMode.TransportWithMessageCredential, Message = new BasicHttpMessageSecur
var binding = new BasicHttpBinding
{
Security = new BasicHttpSecurity
{
Mode = BasicHttpSecurityMode.TransportWithMessageCredential,
Message = new BasicHttpMessageSecurity
{
ClientCredentialType = BasicHttpMessageCredentialType.Certificate
}
}
};
var endpoint = new EndpointAddress(new Uri("https://[service_url]"));
var service = new ServiceClient(binding, endpoint);
service.ClientCredentials.ClientCertificate.SetCertificate(
StoreLocation.LocalMachine, StoreName.My,
X509FindType.FindByThumbprint, "certificate_thumbprint");
以下是Java服务器端在尝试使用配置进行连接时返回的错误:
com.sun.xml.wss.XWSSecurityException:消息不符合
配置的策略(找到签名):比
必需的发现
这里的问题是什么?看起来您的
Java
服务和WCF
客户端之间存在配置差异。。您是否可以添加有关服务和客户端安全配置的更多详细信息?为了获得有意义的反馈,您很可能需要包括有关web服务定义(wsdl)和/或基础策略的详细信息。我怀疑调用中有强制/必需的条目。请发布wsdl以供进一步审查。我认为它与wsdl没有任何关系。尝试使用tcpmon查找wcf客户端发送的消息与java客户端发送的消息之间的差异。您可以将SoapUI用作java客户端。希望这能有所帮助: