项目开发日记:调用Webservice的接口

本文介绍了Java开发者如何调用WebService,主要涉及两种工具:CXF和Axis。对于较新版本的WebService,推荐使用CXF,通过下载、配置环境变量和执行命令来生成Java类。如果遇到WSDLToJavaError,可能是因为Webservice版本过低,此时可以尝试使用Axis。在接口调用阶段,需要初始化Locator和Service对象,然后调用具体接口。
摘要由CSDN通过智能技术生成

在调用Webservice的时候对于java开发者主要需要做两个操作

一、生成wsdl对应的java类

二、调用java类中的接口

一、第一点主要有3种方法实现

1.使用IDEA内置的wsdl转化工具,但是不建议使用此方式(因为我这样做java类是生成成功了,但是调用时出现了报错,原因未明)

2.使用CXF生成,这个方式适用于较新的Webservice

使用方法

1.下载CXF包

此处放3个链接

官方链接1

官方链接2

百度云:链接:https://pan.baidu.com/s/1WcERGgTe0mVTjqZdzgP3Gw 
              提取码:xuad

头两个官方链接下载的比较慢的可以用百度云

2.下载好后配置环境变量

CXF_HOME的路径放到压缩包解压后的bin的上层目录即可

在PATH中添加 %CXF_HOME%\bin

 

3.运行cmd敲命令

先输入 wsdl2java ,出现输入提示代表环境配置成功

随后输入完整命令

wsdl2java -d D:\生成文件放置的完整路径 -encoding utf-8 -p org.生成文件的包名 
 http://Webservice的完整链接?wsdl

没报错就是文件生成成功了

但如果出现了这样的报错,那么代表你用的webservice生成的版本的太低了,需要使用第三种方法

WSDLToJava Error: Rpc/encoded wsdls are not supported with CXF

3.使用axis ,可适用较老版本的webservice

使用方法

1.下载axis包

此处放两个链接,这都是1.4版本的 如果喜欢用axis转化较新的Webservice需要使用axis2及以上

官方链接

百度云:链接:https://pan.baidu.com/s/1HmVZtL1wS8B_l7Ycxla6OA 
              提取码:xuad

2.新建命令执行文件

在解压缩后的lib文件夹下,如D:\soft\axis\axis-1_4\lib

新建txt文件将下方代码段编写后,将文件后缀改为bat,并双击执行

set Axis_Lib=D:\soft\axis\axis-1_4\lib
set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib%
set Axis_Servlet=http://Webservice完整链接?wsdl
%Java_Cmd% org.apache.axis.wsdl.WSDL2Java -u %Axis_Servlet%

你只需要修改第一行(解压缩后的lib文件夹路径)和第三行(Webservice完整链接)

执行成功后会在lib路径下生成java文件包

二、接口调用

将生成的文件放入你的项目中,有包名之类的报错自行修复哈

接口调用时主要为3行代码

WorkflowServiceServiceLocator wss=new WorkflowServiceServiceLocator();//初始化Locator对象
WorkflowService WorkflowServiceService=wss.getWorkflowService();//初始化Service对象
String oid= WorkflowServiceService.XXX("XXXX");//调用实际接口

其余的优化自行解决哈

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值