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及默认值选择合理不合理 外键命名规范及更新和删除时的动作是否合理 泛型 类型参数 --允许在外部指定 ...
随机推荐
- drf-过滤组件|分页组件|过滤器
目录 drf-过滤组件|分页组件|过滤器 群查接口各种筛选组件数据准备 drf过滤组件 搜索过滤组件 | SearchFilter 案例: 排序过滤组件 | OrderingFilter 案例: dr ...
- 【OF框架】在Visual Studio中发布Docker镜像,推送镜像到Azure容器注册表
准备 拥有Azure账号,已经创建 Azure容器注册表,获得注册表地址.账号.密码 本地已经在Visual Studio登录Azure账号. 本地已经拥有Docker环境 注意:首次发布Docker ...
- Docker - Cheap sheet
** IMAGE ** $docker image Delete image : $docker image rm image_id make sure all containers be delet ...
- linux网络编程之socket编程(八)
学习socket编程继续,今天要学习的内容如下: 先来简单介绍一下这五种模型分别是哪些,偏理论,有个大致的印象就成,做个对比,因为最终只会研究一个I/O模型,也是经常会用到的, 阻塞I/O: 先用一个 ...
- java kafka
https://blog.csdn.net/panchang199266/article/details/82113453 安装部署 scala语言开发 + java
- JS创建SVG的问题
在线编辑的一个东西,用的是js+svg,遇到了这样一个问题,就是说我监听页面的单击事件,然后记录下来鼠标单击的位置,给svg添加子标签,然后页面上展示出来 说的可能不大清楚,上代码吧 <!DOC ...
- Codeforces Round #609 (Div. 2) C. Long Beautiful Integer
链接: https://codeforces.com/contest/1269/problem/C 题意: You are given an integer x of n digits a1,a2,- ...
- 云计算(8)--MapReduce如何处理fault
一些常见的故障 NM周期性的给RM发送heartbeats,如果RM发现server fails,则它会让所有与这个server有关的AM知道,让受影响的job的AM采取一些action,重新分配它的 ...
- 性能三 powerVR specfication
2.Optimising Geometry Interleaving Attributes VBO Draw call size Triangle Size 32个像素/primitive - ...
- 前端实现在线预览pdf、docx、xls、ppt等文件
思路:前台将各种格式的附件上传到服务器----后台通过方法将这些格式的文件转化成图片,前台通过放映ppt的方式将其展示在页面上. 关键点:reveal.js 参考文章:https://www.awes ...