繁体   English   中英

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

[英]How to import a WCF web service using a 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 Web服务进行通信吗? 最好的方法是什么?
任何帮助将不胜感激。

您肯定要使用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. 在您的客户的类路径中包括地铁罐。

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

  4. 如果您陷于WS-Policy或wsit-client.xml,请使用Netbeans。 我使用Eclipse进行开发,尽管我不太喜欢Netbeans,但我已经多次使用它作为参考,因为它在IDE中具有配置设置,使您能够保护Web服务和编写Web服务。需要安全性的客户端,它将为您生成其中包含WS-Policy信息的wsit-client.xml和WSDL。 尝试在Netbeans中编写Web应用程序,并指向该服务的WSDL以在其中生成Web Service客户端,并查看生成的文件的外观。

  5. 您可以在SO上得到一些答案,但是java.net Metro 论坛也非常活跃,并且在那里也可以获得很好的支持。 只要准备好回答“在Netbeans / Glassfish中进行XYZ”即可。

这可能会有所帮助: WCF服务和Java客户端

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM