将Web服务连接移植到WCF后,Web服务连接失败

时间:2014-08-19 20:12:33

标签: web-services wcf axis2

我是应用程序的开发人员,该应用程序是内部开发的Web服务的使用者。 Web服务最初是用Java开发的,并部署在JBoss中。

最近,我被告知Web服务已完全移植到.NET WCF。我只是更新了配置文件中的Web服务端点URI字符串,但我的应用程序无法连接到新的Web服务。

在比较旧的和新的WSDL时,我可以看到方法和结构是相同的,但不知何故,名称空间和数组的内部结构是不同的。

您的建议是什么,以便我的应用程序与新的Web服务兼容?

非常感谢。

1 个答案:

答案 0 :(得分:0)

命名空间更改意味着Java Web服务和WCF服务的WSDL都不同。您知道在同名的编程类中,但在不同的命名空间中是完全不同的类。同样,虽然方法签名和数据签名看起来相同,但是,在WSDL的不同XML命名空间中,它们是不同的契约。因此,在您的客户端,您应该有一组新的代理类来与WCF服务进行对话。

您可以向Web服务的开发人员询问有关在WSDL中更改Xml命名空间的意图。如果同时存在Java Web服务和Wcf Web服务并在客户端执行某些更改,则必须针对新的WSDL生成新的代理类,并且建议在IDE中使用svcutil.exe而不是Service Reference你已经很好地控制了CLR名称空间映射到Xml名称空间。

如果服务开发人员可以推翻WSDL的Xml命名空间,并且WSDL可以保持不变,那么您只需要更改URL。