在Java中使用WCF WsHttpBinding Web服务

在Java中使用WCF WsHttpBinding Web服务,java,wcf,web-services,wcf-binding,wshttpbinding,Java,Wcf,Web Services,Wcf Binding,Wshttpbinding,我试图让Java客户机与WCF wshttpbinding Web服务通信。但我不能这样做。电话要么挂断,要么我收到“musunderstoodheader expections” 我的Web服务只是Visual Studio生成的默认“WCF服务库模板” 我的Web服务客户端只是一个空白的IntelliJ项目,使用“添加Web服务客户端”生成相应的存根(指定的Web服务平台是JAX-WS2.X) 当我将绑定更改为BasicHttpBinding时,一切都会完美地工作 我尝试过使用WsHttpB

我试图让Java客户机与WCF wshttpbinding Web服务通信。但我不能这样做。电话要么挂断,要么我收到“musunderstoodheader expections”

我的Web服务只是Visual Studio生成的默认“WCF服务库模板”

我的Web服务客户端只是一个空白的IntelliJ项目,使用“添加Web服务客户端”生成相应的存根(指定的Web服务平台是JAX-WS2.X)

当我将绑定更改为BasicHttpBinding时,一切都会完美地工作

我尝试过使用WsHttpBinding配置,包括关闭安全性,但没有成功


建议?思想?JAX-WS2.0是否仅部分支持WsHttpBinding

我会仔细检查您的WCF配置并删除所有AuthenitAction、Authoration等属性。请记住,默认情况下,WCF将在使用安全传输/绑定时安全地公开您的服务。因此,除非您将Java客户机配置为满足这些安全需求,否则它很可能无法进行身份验证,并且您将看不到两者的相反

一旦有了这两个问题,就逐步添加每个安全元素,直到正确配置Java客户机。

您的问题是不支持wsHttpBinding中使用的相同WS-Protocol。你需要改用。WSIT作为库的一部分提供,该库也可在上获得


我建议尽可能使用wsHttpBinding或ws2007HttpBinding,但您仍然可以通过SSL/Transport Auth上的basicHttpBinding提供相当安全的服务

您能否在Java客户端中与wsHttpBinding共享使用WCF服务的代码?我正在使用Axis2,并且面临安全令牌验证和绑定不匹配等问题。我认为Axis2不允许wcf与wsHttpBinding和Java客户端之间的互操作。