java调用webService接口
java调用webService接口
·
1、需求:
由于业务需求对接一个比较老的平台使用到了webService接口,这里记录一下调用方法。
一般有三种方式调用webService接口,
1.1、以HttpURLConnection的方式调用
1.2、使用apache-cxf生成java类调用
1.3、使用AXIS调用WebService
我这边主要是使用的是,第三种,使用AXIS调用WebService
2、soapUI调用示例:
说明:在webService接口后面拼接“?wsdl”在浏览器上打开,展示的是xml格式数据,保存到本地并修改格式为wsdl,后用soapUI打开后填写入参即可调用接口,如下图。
2、引入的依赖。
说明:以下依赖最好是全部引入,少引用的话会报类找不到异常
<dependency>
<groupId>org.apache.axis</groupId>
<artifactId>axis</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>commons-discovery</groupId>
<artifactId>commons-discovery</artifactId>
<version>0.2</version>
<exclusions>
<exclusion>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.axis</groupId>
<artifactId>axis-jaxrpc</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>org.apache.axis</groupId>
<artifactId>axis-saaj</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>wsdl4j</groupId>
<artifactId>wsdl4j</artifactId>
<version>1.4</version>
</dependency>
3、代码:
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONException;
import com.alibaba.fastjson.JSONObject;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.tiandy.zhfz.casefilemanage.core.vo.CsAjcbrQueryWhere;
import org.apache.axis.client.Call;
public class HttpPost {
private static final String url = "http://10.10.10.10:8001/xtba/services/xtbaWebService";
private static final String usercode = "111";
private static final String pwd = "11111";
/**
* 查询CaAjcbr
* @throws Exception
*/
public static void queryCaAjcbr(String ajuanid) throws Exception{
Call call2 = new Call(url);
call2.setOperationName("queryCsAjcbr");
CsAjcbrQueryWhere csAjcbrQueryWhere = new CsAjcbrQueryWhere();
csAjcbrQueryWhere.setAjuanid(ajuanid);
//将CsAjxx查询对象转换为JSON字符串表示
GsonBuilder build = new GsonBuilder();
Gson gson = build.create();
String json = gson.toJson(csAjcbrQueryWhere);
//提交CsAjxx 查询信息,并且获取调用结果的json表示
String re = (String)call2.invoke(new Object[]{usercode,pwd,json,1,10});
String personInfoStr = re.replaceAll("\\\\","");
JSONObject jsonObject = JSONObject.parseObject(personInfoStr);
System.out.println("1111cbr================="+jsonObject.toJSONString());
}
}
CsAjcbrQueryWhere实体类:
/**
* @authoer: fengwen
* @createDate: 2022/9/9 15:32
* @description:
*/
public class CsAjcbrQueryWhere {
//ID
private String id;
//
private String ajuanid;
//
private String cbr;
//
private String sfzb;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getAjuanid() {
return ajuanid;
}
public void setAjuanid(String ajuanid) {
this.ajuanid = ajuanid;
}
public String getCbr() {
return cbr;
}
public void setCbr(String cbr) {
this.cbr = cbr;
}
public String getSfzb() {
return sfzb;
}
public void setSfzb(String sfzb) {
this.sfzb = sfzb;
}
}
参考:
maven 配置 Axis1.4 依赖的jar包_伐码的博客-CSDN博客_axis-1.4.jar
JAVA调用WebService的三种方法_四叶猫的博客-CSDN博客_java调用webservice接口 三种方法
更多推荐
已为社区贡献1条内容
所有评论(0)