在JAVA中调用WSDL过程需要使用SOAP协议,以实现在网络间的交互。
以下是JAVA调用WSDL过程的详细攻略:
1. 导入WSDL文件
首先需要导入WSDL文件,可以使用JAVA的wsimport工具实现自动生成JAVA代码。在命令行中进入wsimport所在文件夹,输入以下命令:
wsimport <WSDL地址>
实际执行时,可以将
例如,如果WSDL文件地址为http://localhost:8080/Service/service?wsdl,则导入命令应为:
wsimport http://localhost:8080/Service/service?wsdl
2. 生成客户端代码
wsimport命令执行完成后,会在当前目录下生成与WSDL服务接口相关的客户端代码。例如,假设需要调用名为ServicePortType的服务接口,则应该生成以下客户端代码:
Service service = new Service();
ServicePortType servicePortType = service.getServicePortTypePort();
其中ServicePortTypePort为接口名。
3. 调用方法
生成客户端代码后,就可以调用接口中的方法。例如:
String result = servicePortType.doSomething(param);
其中的doSomething为接口中定义的方法名,param为实际传入的参数。
示例
下面将介绍两个示例,以便更好地理解JAVA如何调用WSDL过程。
示例1:获取天气信息
假设需要调用一个获取天气信息的WSDL服务接口,WSDL文件的地址为http://localhost:8080/WeatherService/weather?wsdl。
- 使用wsimport导入WSDL文件:
wsimport http://localhost:8080/WeatherService/weather?wsdl
- 使用生成的客户端代码调用服务:
WeatherService weatherService = new WeatherService();
WeatherServicePortType weatherServicePortType = weatherService.getWeatherServicePortTypePort();
String weatherInfo = weatherServicePortType.getWeatherInfo("beijing");
System.out.println(weatherInfo);
这个示例中,调用了名为getWeatherInfo的服务接口方法,传入参数"beijing",并输出返回的天气信息。
示例2:获取股票价格
假设需要调用一个获取股票价格的WSDL服务接口,WSDL文件的地址为http://localhost:8080/StockService/stock?wsdl。
- 使用wsimport导入WSDL文件:
wsimport http://localhost:8080/StockService/stock?wsdl
- 使用生成的客户端代码调用服务:
StockService stockService = new StockService();
StockServicePortType stockServicePortType = stockService.getStockServicePortTypePort();
BigDecimal price = stockServicePortType.getStockPrice("AAPL");
System.out.println(price);
这个示例中,调用了名为getStockPrice的服务接口方法,传入参数"AAPL",并输出返回的股票价格。
以上就是JAVA调用WSDL过程的详细攻略,希望对您有帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JAVA如何调用wsdl过程详解 - Python技术站