• 利用AXIS2传递JSON数据


    Axis2是目前比较流行的WebService引擎。WebService被应用在很多不同的场景。例如,可以使用WebService来发布服务端 Java类的方法,以便使用不同的客户端进行调用。这样可以有效地集成多种不同的技术来完成应用系统。WebService还经常被使用在SOA中,用于 SOA各个部分交换数据。本文重点在于如何使用AXIS2引擎实现传递JSON数据。

    博主本人由于项目需要,所以就查找了关于Web Service的文章。但碍于博主对Web的不熟,所以很多也就是按照网上教程做的。或许有许多地方不对。还请各位海涵了。

    首先按照《axis2之webservice新手超详细教程》这篇文档搭建了AXIS2的开发环境。接着我想让服务器传递JSON的数据,然后就又查找了如下的两篇资料:《JSON web service with Java and Axis2》和《Building a JSON web service with Java and Axis2

    这两篇资料是老外写的,内容差不多,但是不够详细,没有对具体操作进行说明。下面一个是国人写的《Axis2与Android的Json(Gson)通信传数据》,这篇文档的方法也是按照上述两篇的文章的方法做的,具体就交代了每一步的操作。本文就在此基础上,将每步阐述如下,并且会将各部分的资料上传到百度云盘,方便各位下载。

    第一步:按照1的方法,按部就班的安装 AXIS2。所需要下载的axis.war包和eclipse的两个插件都会放在百度云盘里。
    下载地址:http://pan.baidu.com/s/13ThAk

    第二步:下载DynamicResponseHandler(wso2dynamic-response-1.5.mar)模块,复制到webservice项目中的WEB-INF/modules中,将wso2dynamic-response-1.5.mar加到modules.list文件中。
    下载地址:http://pan.baidu.com/s/1gm56z

    第三步:下载Jettison 1.2和jettison-1.2-patched.jar,放入WEB-INF/lib中的模块,删除jettison-1.0-RC2.jar。
    下载地址:都在第二步下载的包中。

    第四步:找到tomcatwebappsaxis2WEB-INFconfaxis2.xml文件,添加xml

    <module ref="DynamicResponseHandler"/>

    第五步:在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>

    第六步:在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>

    执行完以上步骤后,打开Tomcat服务器,在浏览器中输入测试url:http://localhost:8080/axis2/services/Version/getVersion?response=application/json

    浏览器将返回如下的内容:返回的值为:

    {"return":"Hi - the Axis2version is 1.6.2"}

    这样就完成了AXIS2的 JSON 传值配置。

  • 相关阅读:
    【递推】BZOJ 4300:绝世好题
    【概率DP/高斯消元】BZOJ 2337:[HNOI2011]XOR和路径
    【DP】permu
    【LCA】CodeForce #326 Div.2 E:Duff in the Army
    论本人为什么不更博
    [洛谷P6640] BJOI2020 封印
    [洛谷P5320] BJOI2019 勘破神机
    [AGC003E] Sequential operations on Sequence
    [CF407C] Curious Array
    [LOJ2759] JOI2014 Final 飞天鼠
  • 原文地址:https://www.cnblogs.com/yuanting/p/4781575.html
Copyright © 2020-2023  润新知