连接WCF服务时出现问题,使用Metro协议的HTTP可以连接成功,但HTTPS无法连接。

3
我正在用Java客户端连接到WCF Web服务。已经有其他人成功地构建了连接到该服务的WCF客户端。通过HTTP提供的WSDL支持消息级别安全。通过HTTPS提供的WSDL使用TLS和消息级别安全。我知道在消息级别安全之上使用TLS基本上是双重加密,但这是一个关键要求。
由于我可以正确连接到HTTP服务,我相信我已解决了所有信任存储和密钥存储问题。
我正在使用Metro 2.1.1连接服务。我在Eclipse和Netbeans中都构建了客户端。我从HTTP站点获取WSDL,并使用wsimport(使用-extensions标志)成功构建并执行客户端。
当我使用HTTPS站点获取WSDL时,我也可以成功构建两个客户端。但是当我执行它们时,我得到以下错误:
    Exception in thread "main" javax.xml.ws.soap.SOAPFaultException: An error occurred when verifying security for the message.
at com.sun.xml.ws.fault.SOAP12Fault.getProtocolException(SOAP12Fault.java:225)
at com.sun.xml.ws.fault.SOAPFaultBuilder.createException(SOAPFaultBuilder.java:122)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:119)
at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:89)
at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java:140)
at $Proxy43.request(Unknown Source)

这两个WSDL之间唯一的区别(一个通过HTTP获取,另一个通过HTTPS获取)是WSDL中对HTTPS://与HTTP://的引用。

我无法轻松地访问WCF服务日志 - 通常在我请求一组日志和查看它们之间会有3-6小时的延迟。

我的问题是,是否有人遇到过类似的情况 - 我是否明显地忽略了什么?在NetMon或Wireshark跟踪中是否有我可以查找的问题?我已经苦苦挣扎了几天 - 任何帮助都将不胜感激。

1个回答

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接