我有wsdl http://www.webservicex.net/genericbarcode.asmx?WSDL。 我正在尝试创建一个客户端,在wsdl中寻找逻辑。
我认为它应该从这开始:
BarCode barCode=new BarCode();
BarCodeSoap barCodeSoap=barCode.getBarCodeSoap();
我需要在那里输入任何参数吗?
答案 0 :(得分:1)
可执行代码是从Webservice的WSDL生成的。然后,客户端使用此代码访问Webservice。
例如,GlassFish包含vsimport
实用程序,用于从WSDL生成Java代码。
该实用程序生成许多已编译的Java类,允许客户端应用程序访问Webservices。这些类将进一步添加到客户端的classpath
。
此外,GlassFish包含自定义Ant任务(也有Maven插件)。
然后,您需要使用@WebServiceRef
注释将Web服务实例注入您的客户端。
@WebServiceRef(wsdlLocation="...?wsdl")
private static NameOfYouServiceService nameOfYouServiceService;
...
NameOfYouService
- 这是惯例,即您开发的Webservice的名称。
然后,此调用nameOfYouServiceService.getNameOfYouServicePort()
将返回Webservice的实例。然后你可以免费使用实例的方法。
此处,名称NameOfYouService
- 也是惯例。
简而言之,就是这样。
您的Web服务是用.NET技术编写的,但您也可以使用Java客户端(或PHP或其他东西)来访问它。实际上,客户可以使用任何其他技术访问使用一种技术创建的Web服务。
以下是针对您案例的好文章:Java Client for WebServiceX.Net Web Service (NetBeans IDE)