0

我是一名 Java 程序员,并且创建了一个 WSDL,它定义了一个应该由其他公司的提供者实现的 Web 服务,因此我的系统可以以统一的方式调用不同的提供者。在 Java 中使用 WSDL 可以正常工作 - 我可以生成一起工作的服务器和客户端,并且 Endpoint.publish(URL) 尊重 WSDL 并仅使用附加注释和替换的服务 URL 发布它。

现在的问题:其中一个提供商使用 .NET asmx 来实现服务,这似乎完全转换了 WSDL(如 get 所示https://<providers-service-url>?WSDL),当我使用生成的类(即从原始 wsdl 生成)时服务失败致电服务。该故障指示 NPE 的 .NET 等效项。指向正在运行的服务时,SOAPUI 工作正常。

我相信提供者使用

wsdl.exe /serverInterface <my.wsdl>

产生他的服务。

因此,任何 .NET 大师的问题是:

提供者应该如何生成服务,以便它与从原始 wsdl 生成的客户端一起工作?

.NET 服务能否保留原始 WSDL,https://<providers-service-url>?WSDL使其与原始 WSDL 几乎相同?

感谢您的任何意见。

4

1 回答 1

0

WSDL 实际上只是一种规范文档,它允许实现服务的人查看它公开了哪些方法 - 以及端点等。我过去使用 .NET 使用过 Java Web 服务,实际上是 WSDL 文件起到了一些次要的作用。.NET 开发人员可以通过 Visual Studio IDE 简单地创建对服务的引用。这将创建他需要的任何类,然后实现各种方法。当然,他必须知道安全模型是什么,这样他才能实现正确的绑定。很多人会说 Java 在 .NET 中表现不佳,当然在这方面还有一些奇怪的障碍需要克服,但我个人从未遇到过无法在 .NET 中使用的 Java Web 服务.

于 2015-01-09T15:17:48.340 回答