gradle项目中spring集成cxf调用webservice详细说明

本文介绍了一种利用Apache CXF库快速调用WebService的方法。包括下载并配置CXF库、使用wsdl2java工具生成客户端代码及Spring配置示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前几天公司需要调用webservice接口实现某个东西,之前没有接触过这个东西,于是乎就开始满地寻找,首先调用之前我们先要检测下这个我们这个所需接口的正确性,可以弄点测试数据.。

我用的是wscaller.jar这个包,怎么用的请参照https://wenku.baidu.com/view/0e2432e949649b6648d747de.html。

百度的结果调用的方法有很多种,spring自带的方式,cxf,axis都可以。因为时间比较紧急,所以我选择的是比较成熟的cxf,而且用起来也很简单。

下面直接甩代码,对了甩代码之前还有一步操作:

下载cxf的包(下载地址:http://cxf.apache.org/download.html )

我下的是3.1.10版本的,然后解压一下

解压后是上面的这个包打开bin目录,里面很多的bat脚本,打开命令窗口输入wsdl2java XXXXX?wsdl(XXXX是你的webservice地址,记住要加?wsdl),确认之后,会生成几个文件。

我的接口在org下面,这里面生成的就是我们所需要的接口。然后复制到你的代码中去

现在就剩下配置了,首先包:,可能会有一到两个没有用,但是第一次弄全加上去总是没错的。剩下的就是配置了。

可以新建一个xml(为了方便,可以不新建),这是完整的xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:jaxws="http://cxf.apache.org/jaxws"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd
http://cxf.apache.org/jaxws
http://cxf.apache.org/schemas/jaxws.xsd">

<!-- 引入CXF默认配置文件 -->
<import resource="classpath:META-INF/cxf/cxf.xml"/>
<!--<import resource="classpath:META-INF/cxf/cxf-extension-soap.xml"/>-->
<!--<import resource="classpath:META-INF/cxf/cxf-servlet.xml" />-->


<jaxws:client id="iSvcGetMess" serviceClass="org.tempuri.ISvcGetMess"
address="http://tkt.daosh.net/SvcGetMess.svc" />
</beans>
注意的是3.0以上的版本可以只用
<import resource="classpath:META-INF/cxf/cxf.xml"/>但是3.0以下的版本需要全加上。
serviceClass指的是生成的文件中的service文件在项目里面的路径,address是webservice的路径(注意这里不需要加?wsdl),到这里就已经配置好了。剩下的就是测试了

写个测试的controller,直接调用service里面的接口就能通过了,我这边现在的测试类删掉了,我就不截图了,反正按这个方法肯定是没问题的。

 

 

 

 

 

转载于:https://www.cnblogs.com/zhangbb/p/6429635.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值