用Eclipse3.5+axis2搭建web services 开发和发布环境
xtykc 07月 14th, 2010
常用的Webservices 框架有axis2、Xfire、Apache CXF等,我们选择了比较简单的axis2。axis2目前最新的版本是1.5.1, 不仅支持SOAP 1.1和SOAP 1.2,还支持 REST。 选择axis2的一个重要理由是它有两个非常管用的Eclipse插件(Axis Eclipse Plug-in):代码生成工具(Axis2 code ge nerator)和服务打包工具(Axis2 service archiver),前者在生成客户端测试代码时用,后者在打包发布时非常好用。 曾经尝试用MyEclipse7.0+axis2,但安装好的插件却怎么也不好使,遂放弃。 1.下载并安装Eclipse3.5 将下载到的Eclipse解压缩到一个目录,命名为“eclipse”或任何其他名称,打开该目录,找到一个名为eclipse.exe的可执行 文件,双击它,即可运行eclipse开发环境,eclipse是无需安装的,相比于MyEclipse,这点真是太重要了。 2.下载并安装Axis Eclipse Plug-in 在搜索引擎上输入“axis2 eclipse plug-in”这几个关键词,即可找到插件的下载地址,选取一个较为成熟稳定的版本下载, 我选择了1.3。将得到的两个压缩文件解压缩,得到Axis2_Codegen_Wizard_1.3.0和Axis2_Service_Archiver_1.3.0两个 文件夹,放到eclipse\plugins目录下,进入D:\eclipse\links目录,如果没有links目录就自己新建一个,在links目录下 新建link文档命名为”axis-eclipse-plugin.link”,编辑该文档,写上path=D:\eclipse\plugins,保存,好了,重启 eclipse,在菜单上依次点击file-new-other,如果看到以下画面,恭喜你,插件安装成功了!3.下载Axis2并在Tomcat上部署Axis2 这里的axis2即是web services的开发包和框架(或者说容器)。在搜索引擎上输入“axis2 下载”,找到axis2的下载页面, 选择一个和上面安装的插件相同的版本下载,我的是1.3,下载到axis2-1.3-bin.zip和axis2-1.3-war.zip这两个压缩文 件,bin.zip是开发包,解压缩后得到一大堆jar文件,war.zip是部署在tomcat上的web services 容器,解压缩后得到 axis2.war,将axis2.war文件包放在tomcat的webapps下,重启tomcat,tomcat的webapps下会出现一个axis2的文件夹,在浏 览器上输入http://localhost:8080/axis,如果看到以下界面,就说明这个容器部署好了。
4.业务代码打包和发布 在eclipse上建一个工程,在Build Path里面导入上述bin.zip解压缩后得到的jar包,编写好业务代码和web services接 口,接口里面应该有一些public的方法以供调用。代码写好了之后,可以打包发布了,菜单file-new-other-Axis2 service archiver,出现如下界面,正确选择你的web services接口编译后的.class文件所在的目录,应该是最上层的 package所在的根目录,不包括package,如:D:\workspace\syncData\WebRoot\WEB-INF\classes。

然后一路next下去直到如下图所示:

在class name栏填写好类名和它的package名如:syncdata.syncShLibMyLibResult(syncdata为package名,syncShLibMyLibResult为类名),点击load,即可看到该类所有的public方法,选择好需要发布的方法,再点next,得到如下图所示的界面:

上图中output file location的地址(D:\Tomcat\webapps\axis2\WEB-INF\services)即为web services接口的发布地址,填写好后点击finish,弹出成功窗口,同时会在D:\Tomcat\webapps\axis2\WEB-INF\services目录下发现打包好的.aar文件,axis2默认支持热发布,这时该接口以及发布完成。也可以任意指定output file location的地址,只要发布时将得到的.aar文件拷贝到D:\Tomcat\webapps\axis2\WEB-INF\services下即可。在浏览器上输入http://localhost:8080/axis2/services/listServices,即可看到已经发布成功的web services接口和方法,如有发布不成功的情况,也可以在此页面上看到。
注意:当重新发布相同的web services接口时,需要删除tomcat/webapps下的整个axis2目录,将之前下载到的axis2.war包重新部署,再重新打包发布web services接口,即使将axis2的配置参数改为支持热更新也不行,尚不知何故。
- 备忘 , 笔记
- Comments(0)

3.下载Axis2并在Tomcat上部署Axis2
这里的axis2即是web services的开发包和框架(或者说容器)。在搜索引擎上输入“axis2 下载”,找到axis2的下载页面,
选择一个和上面安装的插件相同的版本下载,我的是1.3,下载到axis2-1.3-bin.zip和axis2-1.3-war.zip这两个压缩文
件,bin.zip是开发包,解压缩后得到一大堆jar文件,war.zip是部署在tomcat上的web services 容器,解压缩后得到
axis2.war,将axis2.war文件包放在tomcat的webapps下,重启tomcat,tomcat的webapps下会出现一个axis2的文件夹,在浏
览器上输入
4.业务代码打包和发布
在eclipse上建一个工程,在Build Path里面导入上述bin.zip解压缩后得到的jar包,编写好业务代码和web services接
口,接口里面应该有一些public的方法以供调用。代码写好了之后,可以打包发布了,菜单file-new-other-Axis2
service archiver,出现如下界面,正确选择你的web services接口编译后的.class文件所在的目录,应该是最上层的
package所在的根目录,不包括package,如:D:\workspace\syncData\WebRoot\WEB-INF\classes。