AXIS2发布rest服务1

xiaoxiao2026-03-18  7

最近小组在研究一些新技术,包括了Rest,把学习的一些心得写下来,本文关注的是如何用axis2发布简单的Rest。 1. 从[url]http://ws.apache.org/axis2/download/1_4_1/download.cgi[/url]下载最新的axis2版本 2. 从[url]http://tomcat.apache.org/download-60.cgi[/url]下载tomcat服务器 3. 配置好tomcat服务器,确保tomcat没问题 4. 解压缩axis2-1.4.1-war.zip,拷贝axis2.war到tomcat下webapps目录,启动tomcat,输入url [url]http://localhost/axis2/[/url],可以查看web service服务的状态,通过[url]http://localhost/axis2/axis2-admin[/url],可以登陆axis2后台管理界面,可以停止,启动,上传服务等,默认用户为admin,密码为axis2。 5. 在Eclipse下新建工程Research,结构如图: [img]/upload/attachment/101984/b58f8ec4-3b20-3451-93c5-7e69e33f1ec9.jpg[/img] AxisRest.java package research.rest;import java.util.ArrayList;import java.util.List;/** * *//** * @author 玥儿 * */public class AxisRest { public String WelComeRest() { return new StringBuffer("Welcome to rest word! ").toString(); } public List<String> getCityList() { List<String> citys = new ArrayList<String>(); citys.add(new StringBuffer("Shanghai").toString()); citys.add(new StringBuffer("Beijing").toString()); citys.add(new StringBuffer("Xi'an").toString()); citys.add(new StringBuffer("Chongqing").toString()); citys.add(new StringBuffer("Tianjin").toString()); return citys; }} 建立文件META-INF/services.xml,类容如下: <service> <parameter name="ServiceClass" locked="false"> research.rest.AxisRest </parameter> <operation name="WelComeRest"> <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" /> </operation> <operation name="getCityList"> <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" /> </operation></service> 建立build.xml,采用ant进行构建 <project name="Rest" basedir="." default="deploy"> <description>Rest use axis2</description> <property name="src.dir" value="${basedir}/src" /> <property name="build.dir" value="${basedir}/bin" /> <property name="war.dir" value="D:\programing\tomcat\webapps\axis2.war" /> <property name="deploy.dir" value="${war.dir}\WEB-INF\services" /> <property name="deploy.temp" value="${basedir}/deploy" /> <target name="init"> <echo>Initializing the environment!</echo> <delete dir="${deploy.temp}" /> <delete dir="${build.dir}" /> <mkdir dir="${deploy.temp}" /> <mkdir dir="${build.dir}" /> </target> <target name="jar" depends="init"> <echo>Compressing files to .aar file!</echo> <javac srcdir="${src.dir}" destdir="${build.dir}"> </javac> <jar basedir="${basedir}/bin" destfile="${deploy.temp}/rest.aar"> <fileset dir="${basedir}" id="META-INF"> <include name="META-INF/services.xml" /> </fileset> </jar> </target> <target name="deploy" depends="jar"> <echo>Deploying service!</echo> <copy todir="${deploy.dir}"> <fileset dir="${deploy.temp}"> <include name="rest.aar" /> </fileset> </copy> </target></project> 为了方便,不想通过axis2后台上传服务,所以先解压axis2.war文件,然后把axis2文件名重命名为axis2.war. [img]/upload/attachment/101988/c2ec48d4-7856-3302-b221-a9cb73a9d047.jpg[/img] 通过Eclipse发布工程后,就可以通过rest来访问服务了吧,访问[url]http://localhost/axis2/services/rest/WelComeRest[/url],效果如图: [img]/upload/attachment/101994/9c996040-7861-32b7-a7d1-91a48e144ff8.jpg[/img] 访问[url]http://localhost/axis2/services/rest/getCityList[/url],效果如图: [img]/upload/attachment/101992/91021f17-2727-33a2-b507-6fa6d91b55b7.jpg[/img] 简单吧,[b][color=red]未完待续......[/color][/b] 相关资源:敏捷开发V1.0.pptx
转载请注明原文地址: https://www.6miu.com/read-5046118.html

最新回复(0)