axis2系列之返回json数据
来源:互联网 发布:程序员代码面试指 pdf 编辑:程序博客网 时间:2024/05/29 16:03
1、搭建好eclipse开发环境: axis2系列之eclipse开发环境搭建
2:下载DynamicResponseHandler(wso2dynamic-response-1.5.mar)模块,复制到webservice项目中的WEB-INF/modules中,记住要把wso2dynamic-response-1.5.mar加到modules.list中
3:下载Jettison,放入WEB-INF/lib中的模块,以及下载Jettison1.2补丁jettison-1.2-patched.jar,放入WEB-INF/lib中的模块,一定要jettison-1.2-patched.jar,如果有jettison-1.0-RC2.jar或老版本要移除,否则用的是老版本
4:将axis2.xml(定位在WEB-INF/conf)配置文件中的添加
<moduleref="DynamicResponseHandler"/>
5:在axis2.xml添加JSON消息格式,一定要是<messageFormatters>标签里,原来有这个标签的则在原来的标签里加,如果原来没有这个标签则才新加:
<messageFormatters>
<messageFormattercontentType="application/json"class="org.apache.axis2.json.JSONMessageFormatter"/>
<messageFormattercontentType="application/json/badgerfish"class="org.apache.axis2.json.JSONBadgerfishMessageFormatter"/>
</messageFormatters>
6:在axis2.xml添加JSON消息编译,一定要是<messageBuilders>标签里,原来有这个标签的则在原来的标签里加,如果原来没有这个标签则才新加:
<messageBuilders>
<messageBuildercontentType="application/json"class="org.apache.axis2.json.JSONOMBuilder"/>
<messageBuildercontentType="application/json/badgerfish"class="org.apache.axis2.json.JSONBadgerfishOMBuilder"/>
</messageBuilders>
7:启动你的服务容器,并且通过url测试,例如:
http://localhost:8080/axis2/services/Version/getVersion?response=application/json
返回的值为:{"return":"Hi - the Axis2version is 1.6.2"}
方案二:传值为json
通过上面的例子如果是用pojo传过来的是一个类,那里面的格式如下:
{"return":{"@type":"ax24:IdentityBean","result":false,"userId":"030"}}
这并不是一个标准的json,所有采取的方法只有在传的时候直接打成json来传.
服务器转换代码:
Useruser
Gson gson = new Gson();
String str = gson.toJson(user);
直接返回的是String个客户端,客户端请求数据如下:
<ns:LoginResponse xmlns:ns="http://ws.apache.org/axis2">
<return>
{"userId":"030","result":false,"list":[{"id":0,"name":"John0","email":"Email0","address":"Address0"},{"id":1,"name":"John1","email":"Email1","address":"Address1"},{"id":2,"name":"John2","email":"Email2","address":"Address2"}]}
</return>
</ns:LoginResponse>
可以看出中间的数据都是Json,然后在客户端再转一次:
Gson gson = new Gson();
User userInfo = (User) GsonUtils.Decryption(json,User.class);
这样就能实现json的传输,并且还可以在中间采用加密,实现保密传输。
- axis2系列之返回json数据
- 利用AXIS2返回JSON
- java Axis2 返回json格式
- Struts2系列之 (1)通过JSON插件返回ajax数据
- WebService之Axis2系列教程(三)Axis2复合类型数据的传递
- Spring MVC之返回JSON数据
- springMVC之如何返回Json数据
- 3.Spring boot之返回json数据
- spring boot起步之返回json数据
- Spring Boot之返回JSON数据
- [Axis2与Eclipse整合开发Web Service系列之三] 服务端返回值
- struts2 初学系列(二) 返回json数据
- axis2系列之异步调用
- Android访问网络系列之--服务端返回XML或JSON格式数据,Android 进行解析并显示
- action 返回 json 数据
- struts2 返回json数据
- java 返回json数据
- webservice返回json数据
- NetBIOS协议
- Servlet制作验证码
- 第11章 WebSocket协议开发
- LeetCode学习篇二十五——Balanced Binary Tree
- Javascript: unterminated string literal 解决方法
- axis2系列之返回json数据
- html页面跳转传递参数
- 批量修改文件名
- 数据结构试验四 --图论
- Java多线程锁对象的改变
- JS唤醒Android APP(包括在外部浏览器和WebView)
- Java基础第一阶段——02_Java语言基础_关键字&变量&运算
- 最短路径——SPFA算法(蓝桥杯试题集)
- java基础-集合框架9 增强for循环