c# - 如何使用 Java 客户端导入 WCF Web 服务

标签 c# wcf java-client

我有一个使用 wsHttpBinding 的 WCF Web 服务,我从 Java 客户端使用它。我使用 wsimport 从 WSDL 生成代码。 Java 客户端似乎可以很好地创建服务,但是当我在服务上调用方法时,客户端只会旋转。

MyService s = new MyService();
IMyService i = s.getWSHttpBindingIMyService();
returnedValue = i.getSomething(2); // method call

Java 客户端能否与使用 wsHttpBinding 的 WCF 网络服务通信?这样做的最佳方式是什么?
任何帮助将不胜感激。

最佳答案

您肯定希望使用 WSIT 来帮助编写您的客户端,使用整个 Metro 可能是最简单的方法堆。 Metro 在其 jars(webservices-rt.jar 和 webservices-api.jar)中包含 jaxws-ri、WSIT 和 JAB。

开始的几个步骤:

  1. WCF 服务的已发布 WSDL 是否包含 WS-Policy 部分?如果没有,请获取该信息并将其放入服务 WSDL 文件的本地本地副本中。在包含 WS-Policy 部分的 WSDL 上重新运行 wsimport。

  2. 将 Metro jar 包含在您客户的类路径中。

  3. 编写一个名为 wsit-client.xml 的文件并将其放入 WEB-INF/classes(或您的类路径)。这是一个 sample .现在,当您使用客户端时,您应该会在控制台中看到一条信息消息:WSP5018:从文件加载 WSIT 配置:

  4. 如果您在 WS-Policy 或 wsit-client.xml 上遇到困难,请使用 Netbeans。我使用 Eclipse 进行开发,虽然我不太喜欢 Netbeans,但我已经多次将其用作引用,因为它在 IDE 中具有配置设置,使您能够保护 Web 服务并编写 Web 服务需要安全性的客户端,它会为您生成带有 WS-Policy 信息的 wsit-client.xml 和 WSDL。尝试在 Netbeans 中编写 Web 应用程序并指向服务的 WSDL 以在那里生成 Web 服务客户端并查看生成的文件是什么样子。

  5. 您可以在 SO 上找到一些问题的答案,但是 java.net Metro forum也很活跃,你也可以在那里得到很好的支持。准备好回答“在 Netbeans/Glassfish 中执行 XYZ”之类的回答。

关于c# - 如何使用 Java 客户端导入 WCF Web 服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2767984/

相关文章:

c# - 如何查找 Windows 窗体应用程序的产品代码?

c# - 在 C# 中打印文档和创建 PDF

c# - 在 WCF 服务构造函数中发送参数 - 错误

java - 如何获取 Cassandra 中给定复合键范围之间的所有行?

scala - 使用 AWS S3 Java 客户端获取目录和对象元数据

c# - 使用 LINQ 使用复合主键更新表

java - 将普通Web服务转换为WCF

wcf - 在 Mono 2.8.2 中创建 WCF 服务

java - Appium :java. lang.NoSuchMethodError : com. google.gson.GsonBuilder.setLenient()Lcom/google/gson/GsonBuilder;

c# - 是否有包装同步 API 以将方法公开为异步的模式?