WebService(axis2),整合springmvc
webservice:不同组织或者部门之间互通数据

1 package com.sh.test;
2
3
4 import javax.servlet.http.HttpServletRequest;
5 import javax.servlet.http.HttpServletResponse;
6 import javax.xml.namespace.QName;
7
8 import org.apache.axiom.om.OMElement;
9 import org.apache.axis2.AxisFault;
10 import org.apache.axis2.addressing.EndpointReference;
11 import org.apache.axis2.client.Options;
12 import org.apache.axis2.rpc.client.RPCServiceClient;
13 import org.springframework.stereotype.Controller;
14 import org.springframework.web.bind.annotation.RequestMapping;
15 import org.springframework.web.bind.annotation.RequestMethod;
16
17 /**
18 * WebSerivce 客户端
19 * @author Administrator
20 *
21 */
22 @Controller
23 public class WsClient {
24
25 @RequestMapping(value="/wsclient",method=RequestMethod.GET)
26 public void Wstest(HttpServletRequest request, HttpServletResponse response){
27 String url = "http://192.168.1.168:8080/axis2demo/services/TestWSService?wsdl";//TestWSService这个就是services.xml中第三行的
28 try {
29 // 使用RPC方式调用WebService
30 RPCServiceClient serviceClient = new RPCServiceClient();
31 // 指定调用WebService的URL
32 EndpointReference targetEPR = new EndpointReference(url);
33 Options options = serviceClient.getOptions();
34 // 确定目标服务地址
35 options.setTo(targetEPR);
36 // 确定调用方法
37 options.setAction("urn:jiafa");
38 options.setTimeOutInMilliSeconds(60000L);//超时时间 毫秒
39 //第一个参数:包名倒过来,第二个参数:调用的方法
40 QName qname = new QName("http://test.sh.com","jiafa");
41 // 指定jiafa方法的参数值
42 Object[] parameters = new Object[] {9,9};
43 // 调用方法一 传递参数,调用服务,获取服务返回结果集
44 OMElement element = serviceClient.invokeBlocking(qname, parameters);
45 // 值得注意的是,返回结果就是一段由OMElement对象封装的xml字符串。
46 String result = element.getFirstElement().getText();
47 System.out.println(result);
48 } catch (AxisFault e) {
49 e.printStackTrace();
50 }
51 }
52 @RequestMapping(value="/wsclientjianfa",method=RequestMethod.GET)
53 public void Wstest1(HttpServletRequest request, HttpServletResponse response){
54 String url = "http://192.168.1.168/axis2demo/services/TestWSService?wsdl";//TestWSService这个就是services.xml中第三行的
55 try {
56 // 使用RPC方式调用WebService
57 RPCServiceClient serviceClient = new RPCServiceClient();
58 // 指定调用WebService的URL
59 EndpointReference targetEPR = new EndpointReference(url);
60 Options options = serviceClient.getOptions();
61 // 确定目标服务地址
62 options.setTo(targetEPR);
63 // 确定调用方法
64 options.setAction("urn:jianfa");
65 options.setTimeOutInMilliSeconds(60000L);//超时时间 毫秒
66 //第一个参数:包名倒过来,第二个参数:调用的方法
67 QName qname = new QName("http://test.sh.com","jianfa");
68 // 指定jiafa方法的参数值
69 Object[] parameters = new Object[] {9,9};
70 // 调用方法一 传递参数,调用服务,获取服务返回结果集
71 OMElement element = serviceClient.invokeBlocking(qname, parameters);
72 // 值得注意的是,返回结果就是一段由OMElement对象封装的xml字符串。
73 String result = element.getFirstElement().getText();
74 System.out.println(result);
75 } catch (AxisFault e) {
76 e.printStackTrace();
77 }
78 }
79 @RequestMapping(value="/wsclientchengfa",method=RequestMethod.GET)
80 public void Wstest2(HttpServletRequest request, HttpServletResponse response){
81 String url = "http://192.168.1.168/axis2demo/services/TestWSService1?wsdl";//TestWSService这个就是services.xml中第三行的
82 try {
83 // 使用RPC方式调用WebService
84 RPCServiceClient serviceClient = new RPCServiceClient();
85 // 指定调用WebService的URL
86 EndpointReference targetEPR = new EndpointReference(url);
87 Options options = serviceClient.getOptions();
88 // 确定目标服务地址
89 options.setTo(targetEPR);
90 // 确定调用方法
91 options.setAction("urn:chengfa");
92 options.setTimeOutInMilliSeconds(60000L);//超时时间 毫秒
93 //第一个参数:包名倒过来,第二个参数:调用的方法
94 QName qname = new QName("http://test.sh.com","chengfa");
95 // 指定jiafa方法的参数值
96 Object[] parameters = new Object[] {9,9};
97 // 调用方法一 传递参数,调用服务,获取服务返回结果集
98 OMElement element = serviceClient.invokeBlocking(qname, parameters);
99 // 值得注意的是,返回结果就是一段由OMElement对象封装的xml字符串。
100 String result = element.getFirstElement().getText();
101 System.out.println(result);
102 } catch (AxisFault e) {
103 e.printStackTrace();
104 }
105 }
106
107
108
109 }

WebService(axis2),整合springmvc的更多相关文章
- CXF WebService整合SpringMVC的maven项目
首先推荐博客:http://www.cnblogs.com/xdp-gacl/p/4259481.html http://blog.csdn.net/hu_shengyang/article/de ...
- webservice axis2客户端设置代理方法(公司网络通过代理访问时)
webservice axis2客户端设置代理方法(公司网络通过代理访问时) UploadProcessInServiceStub stub = new UploadProcessInServic ...
- spring整合springmvc和hibernate
上篇文章使用maven搭建了web环境,这篇来记录下如何使用spring整合springmvc和hibernate,亦即spring+springmvc+hibernate框架整合. 第一步:首先配置 ...
- springmvc 项目完整示例07 设置配置整合springmvc springmvc所需jar包springmvc web.xml文件配置
前面主要是后台代码,spring以及mybatis的整合 下面主要是springmvc用来处理请求转发,展现层的处理 之前所有做到的,完成了后台,业务层和持久层的开发完成了 接下来就是展现层了 有很多 ...
- eclipse 创建maven 项目 动态web工程完整示例 maven 整合springmvc整合mybatis
接上一篇: eclipse 创建maven 项目 动态web工程完整示例 eclipse maven工程自动添加依赖设置 maven工程可以在线搜索依赖的jar包,还是非常方便的 但是有的时候可能还需 ...
- SpringBoot整合系列-整合SpringMVC
原创作品,可以转载,但是请标注出处地址:https://www.cnblogs.com/V1haoge/p/9984607.html SpringBoot整合Spring MVC 步骤 第一步:添加必 ...
- Shiro 整合SpringMVC 并实现权限管理,登录和注销
Shiro 整合SpringMVC 并且实现权限管理,登录和注销 Apache Shiro是Java的一个安全框架.目前,使用Apache Shiro的人越来越多,因为它相当简单,对比Spring S ...
- 整合SpringMVC框架和Spring框架
-------------------------siwuxie095 整合 SpringMVC 框架和 Spring 框架 ...
- 【AngularJS】AngularJS整合Springmvc、Mybatis环境搭建
近期想学习AngularJS的使用,网上搜了一圈后,折腾了半天解决bug后,成功使用AngularJS整合Springmvc.Spring.Mybatis搭建了一个开发环境.(这里Spring使用的版 ...
- 简述泛型、用Maven创建Web项目以及在Web项目上整合SpringMVC
表设计 Timestamp列是否取消"根据当前时间戳自动更新" 是否null及默认值选择合理不合理 外键命名规范及更新和删除时的动作是否合理 泛型 类型参数 --允许在外部指定 ...
随机推荐
- windows上安装python虚拟环境
一.windows上安装python虚拟环境 1.安装pip install virtualenvvirtualenv --version 2.新建一个python虚拟环境virtual_env_01 ...
- git命令——revert、reset
参考:如何在 Git 中重置.恢复,返回到以前的状态 使用git时,如果对刚刚提交的后悔了怎么办,如何撤销? 方法一:手动修改 你把新增的文件删了 或者 更改过的文件再改回来,然后再commit一次. ...
- C++——virtual function
无论是pure virtual还是impure virtual,都允许子类override他.但是真两种方式还是有一点差别,如果是pure virtual,那么父类是十分强烈希望子类override他 ...
- [ansible-playbook]4 持续集成环境之分布式部署利器 ansible playbook学习
3 ansible-play讲的中太少了,今天稍微深入学习一点 预计阅读时间:15分钟 一: 安装部署 参考 http://getansible.com/begin/an_zhuang_ansile ...
- Linux下Mysql服务安装【1】
https://www.cnblogs.com/xiaxiaoxu/p/9978976.html 第一步:获取mysql8.0的yum源 进入mysql官网获取RPM包下载地址 https://dev ...
- Educational Codeforces Round 72 (Rated for Div. 2)-D. Coloring Edges-拓扑排序
Educational Codeforces Round 72 (Rated for Div. 2)-D. Coloring Edges-拓扑排序 [Problem Description] 给你 ...
- MCUXpresso IDE:导入Kinetis Design Studio工程
我的许多当前活跃的工程都在使用恩智浦的Kinetis Design Studio(KDS)V3.2.0(我在GitHub上发表了许多工程). 现在随着MCUXpresso IDE的出现(参见“MCUX ...
- 剑指Offer(三十一):整数中1出现的次数(从1到n整数中1出现的次数)
剑指Offer(三十一):整数中1出现的次数(从1到n整数中1出现的次数) 搜索微信公众号:'AI-ming3526'或者'计算机视觉这件小事' 获取更多算法.机器学习干货 csdn:https:// ...
- The 2019 Asia Nanchang First Round Online Programming Contest The Nth Item
The Nth Item 思路: 先用特征根法求出通向公式,然后通向公式中出现了\(\sqrt{17}\),这个可以用二次剩余求出来,然后可以O(\(log(n)\))求出. 但是还不够,我们先对\( ...
- appium webdriver 基本操作及小例子等
#encoding=utf-8 ''' ''' #driver新建 driver=webdriver.Remote('http://localhost:4723/wd/hub',caps) #关闭dr ...