axis2、CXF webservice传对象及附件

1、使用CXF发布服务端,接口参数Student,byte数组,javax.activation.DataHandler对象,byte和DataHandler用来测试不同方式接收附件。

2、发布服务,发布成功后可以看到,byte数组和DataHandler type都是"xs:base64Binary"

3、使用axis2命令:wsdl2java -uri wsdl地址 -p 类包路径 -o 生成文件的路径

生成客户端调用,可以看到不管是byte[]还是DataHandler类型,set值时都是DataHandler类型

4、使用CXF命令:wsdl2java -p 类包路径 -d 生成文件的路径 -encoding utf-8 -client  wsdl地址

生成客户端调用,首先说一下命令加上 -client ,会直接生成一个带有_Client类直接在里面修改测试就行,否则不会自动生成此类,具体调用自己写。根据截图可以看到不管是byte[]还是DataHandler类型,cxf客户端传参都是byte数组。

5、cxf 不使用命令生成客户端, 使用JaxWsDynamicClientFactory 调用,如果不传自定义对象红框内容可以去掉(暂时找到这种方法传自定义对象),使用此种方法不用再使用命令生成客户端。

可以将此方法参数提炼出来,单独做一个工具栏调用,

client.invoke("wsdl中的方法名", object... params);object... params 可变参数

 服务端实现类:

参考文章:axis2开发webservice之(二进制文件传输)_thinkpadshi的博客-CSDN博客 

cxf客户端传字符串及自定义对象参数两种调用方式_王绍桦的博客-CSDN博客_cxf参数

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值