cxf调用WebService
一、用CXF调用WebService的几种方式,参考:
http://cxf.apache.org/docs/how-do-i-develop-a-client.html
二、JaxWsProxyFactoryBean 与 JaxWsDynamicClientFactory
1、 JaxWsProxyFactoryBean
简介:调用方式采用了和RMI类似的机制,即客户端直接服务器端提供的服务接口(interface),CXF通过运行时代理生成远程服务的代理对象,在客户端完成对webservice的访问;几个必填的字段:setAddress-这个就是我们发布webservice时候的地址,保持一致缺点:这种调用service的好处在于调用过程非常简单,就几行代码就完成一个webservice的调用,但是客户端也必须依赖服务器端的接口,这种调用方式限制是很大的,要求服务器端的webservice必须是java实现--这样也就失去了使用webservice的意义
- publicclass Client {
- publicstaticvoid main(String[] args) {
- JaxWsProxyFactoryBean bean = new JaxWsProxyFactoryBean();
- bean.setServiceClass(HelloWorldService.class);
- bean.setAddress("http://localhost:9090/helloWorldService");
- HelloWorldService helloWorldService = (HelloWorldService)bean.create();
- String result = helloWorldService.sayHello("Kevin");
- System.out.println(result);
- }
2、JaxWsDynamicClientFactory简介:只要指定服务器端wsdl文件的位置,然后指定要调用的方法和方法的参数即可,不关心服务端的实现方式。
- publicclass Client3 {
- publicstaticvoid main(String[] args) throws Exception {
- JaxWsDynamicClientFactory clientFactory = JaxWsDynamicClientFactory.newInstance();
- Client client = clientFactory.createClient("http://localhost:9090/helloWorldService?wsdl");
- Object[] result = client.invoke("sayHello", "KEVIN");
- System.out.println(result[0]);
- }
- }
三、设置http参数
HTTPConduit http = (HTTPConduit) client.getConduit();
HTTPClientPolicy httpClientPolicy =
new
HTTPClientPolicy();
httpClientPolicy.setConnectionTimeout(
36000
);
httpClientPolicy.setAllowChunking(
false
);
httpClientPolicy.setReceiveTimeout(
32000
);
http.setClient(httpClientPolicy);
setUseHttpsURLConnectionDefaultHostnameVerifier(boolean useHttpsURLConnectionDefaultHostnameVerifier)
setUseHttpsURLConnectionDefaultSslSocketFactory(boolean useHttpsURLConnectionDefaultSslSocketFactory)
cxf调用WebService的更多相关文章
- Java调用WebService方法总结(7)--CXF调用WebService
CXF = Celtix + XFire,继承了Celtix和XFire两大开源项目的精华,是一个开源的,全功能的,容易使用的WebService框架.文中所使用到的软件版本:Java 1.8.0_1 ...
- Spring Boot 使用 CXF 调用 WebService 服务
上一张我们讲到 Spring Boot 开发 WebService 服务,本章研究基于 CXF 调用 WebService.另外本来想写一篇 xfire 作为 client 端来调用 webservi ...
- cxf 调用 webservice服务时传递 服务器验证需要的用户名密码
cxf通过wsdl2java生成客户端调用webservice时,如果服务器端需要通过用户名和密码验证,则客户端必须传递验证所必须的用户名和密码,刚开始想通过url传递用户名和密码,于是在wsdl文件 ...
- XML:使用cxf调用WebService接口时报错:编码GBK的不可映射字符(设置UTF-8字符集)
调用代码如下 JaxWsDynamicClientFactory dcf = JaxWsDynamicClientFactory.newInstance(); Client client = dcf. ...
- 使用cxf调用webservice
1.引入maven包 <dependency> <groupId>org.apache.cxf</groupId> <artifactId>cxf-rt ...
- CXF调用webservice超时设置
JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean(); factory.setServiceClass(Service1Soap.cl ...
- Java调用WebService方法总结(1)--准备工作
WebService是一种跨编程语言.跨操作系统平台的远程调用技术,已存在很多年了,很多接口也都是通过WebService方式来发布的:本系列文章主要介绍Java调用WebService的各种方法,使 ...
- CXF发布webService服务以及客户端调用
这篇随笔内容是CXF发布webService服务以及客户端调用的方法 CXF是什么? 开发工作之前需要下载CXF和安装 下载地址:http://cxf.apache.org 安装过程: <1&g ...
- Apache CXF实现WebService发布和调用
第一种方法:不用导入cxf jars 服务端: 1. 新建Web工程 2.新建接口和实现类.测试类 目录结构图如下: 接口代码: package com.cxf.spring.service; imp ...
随机推荐
- 【Oracle】客户端监听配置
首先找到oracle软件安装的目录,找到\product\11.2.0\client_1\network\admin,打开tnsnames.ora文件: 粘贴一下内容: LISTENER= (DESC ...
- servlet-后台获取form表单传的参数
前台代码: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> & ...
- 微信公众号API使用总结
官网: https://mp.weixin.qq.com/ API: http://mp.weixin.qq.com/wiki/home/index.html 接口调试工具:h ...
- 《3D建模初步》参考资料
本门课程主要从3D打印角度来介绍3D建模的简单知识.课程采用免费的3D CAD软件Autodesk 123D Design来具体演示一些简单模型的构建方法,并介绍3D打印有关的知识与方法. 课程以&l ...
- js判断数组中是否包含某个值
/** * 判断数组中是否包含某个值 * @param arr 数组 * @param str 值 * @returns {boolean} */ function contains(arr, str ...
- encodeURI和encodeURIComponent的区别?
encodeURI方法不会对下列字符编码 ASCII字母.数字.~!@#$&*()=:/,;?+' encodeURIComponent方法不会对下列字符编码 ASCII字母.数字.~!*() ...
- QBXT春季培训酱油记
Day-1: 下午回家收拾东西,明天去JN,先通知一下在JN的lll dalao明天去见他,然而手办到了,心情大好啊有没有,有没有! 晚上单曲循环<初音未来的消失>,睡觉的时候哭得稀里哗啦 ...
- 3.在eclipse中创建Web项目,并部署到Tomcat上
1.找到创建web项目的菜单 2.创建web项目并选择web环境 3.查看创建好的web项目结构 4.在web项目的webContent文件夹下创建jsp页面 5.查看是否创建jsp页面成功,并编辑j ...
- 利用Flask-SQLAlchemy提供的paginate()方法实现博客文章的分页显示
在开发blog系统的时候,我们有一个需求,就是要显示作者已经发表的blog文章的列表,或显示作者关注者的文章列表.实现这个功能并不复杂,只需要在存储文章的数据库中过滤出指定作者的文章,然后渲染HTML ...
- 世界对一名颓废者的惩罚——SDOI2019R1游记
在清明节前,我仿佛已经成为了一名退役选手 一个月做五道题,10天不碰电脑 终日只知颓废 SDOI2019,希望能引起我的警戒吧 Day 0 不说了. 晚上做了三道斯波题(包括去年多省联考的D1T1), ...