您的位置:首页 > 编程语言 > Java开发

Axis2(Java)学习笔记

2011-11-10 16:46 295 查看

Axis2(Java)学习笔记

Kagula

2011-11-9

内容简介

Apache Axis2(Java)的安装和使用。这里假设你已经正确安装JDK和Eclipse。本文内容不包括ApacheAxis2客户端的编写。

学习环境

[1]JDK 1.6.x

[2]EclipseIndigo

[3]ANT 1.8.2

[4] axis2-1.5.6

[5]WinXP SP3

[6]Tomcat5.5

正文

   Axis2的介绍参考资料[2]

Axis2(Java)运行&开发环境的安装

在参考网站[1]、[3]中下载axis2-1.5.6-bin.zip 和apache-ant-1.8.2-bin.zip并解压缩。

设置环境变量为(=符号后面跟的是安装和解压缩路径,你也可以指定其它路径)

JAVA_HOME= D:\Java\jdk1.6.0_27

ANT_HOME=D:\apache\apache-ant-1.8.2

AXIS2_HOME= D:\apache\ axis2-1.5.6

 

运行下面的命令启动Axis2服务端

%AXIS2_HOME%\bin\axis2server.bat

访问http://localhost:8080/axis2/services/

验证运行环境是否安装成功

 

修改AXIS2_HOME/conf/axis2.xml文件,可以改变默认侦听端口。

启动Axis2时加上-xdebug参数,可以通过8000端口调试WS服务。

 

 

从参考网站[1]中下载axis2-eclipse-codegen-plugin-1.5.6.zip和axis2-eclipse-service-plugin-1.5.6.zip文件,参考资料[4]安装,此步骤本文可选。

Serviceplugin功能:[1]把项目打包成“aar”、“jar”[2]把项目部署到Axis2服务器

Codegen功能:WSDL和Java之间的互相转换。

Axis2(Java)开发WS服务端

方法一:手动部署

第一步:新建Java project,添加class源码如下

package com.cwebs;

public class Hello {

publicString sayHello(String user) {

return"Hello, " + user;

}

}


第二步:在项目中新建META-INF文件夹
新建services.xml文件,配置要暴露的class,内容如下

<service name="HelloWorld">

<description>Web Service例子</description>

<parameter name="ServiceClass">com.cwebs.Hello</parameter>

<messageReceivers>

<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-out"

class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>

<messageReceiver mep="http://www.w3.org/2004/08/wsdl/in-only"

class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/>

</messageReceivers>

</service>


第三步:新建文件夹,并复制文件,结构如下
D:\ws\com\cwebs\Hello.class

D:\ws\META-INF\services.xml

在命令行方式下进入D:\ws文件夹,输入“jar  cvf  ws.aar  .”命令,注意不要忘记“.”符号,在当前目录下生成ws.aar文件复制到D:\apache\axis2-1.5.6\repository\services目录下即可。

第三步在Eclipse里可以简单实现,右键单击项目名称[Export]->[Java]->[JARfile] 输入Hello.aar文件名,就会导出到指定目录的Hello.aar文件中去,注意一定要选择src目录,这样才能导出相应的class文件。

同名aar文件存在的,在更新后,可能需要重启Axis2才能看到变化,否则还是显示老错误信息。

具体参考资料[5]

可以使用下面的URL测试
http://localhost:8080/axis2/services/HelloWorld/sayHello?user=abc
"HelloWorld"是Services.xml里service标签的name属性

"sayHello"是方法名

"user"是参数名

服务端管理

Axis2独立版进不了管理界面,下载安装了Tomcat5.5和Axis2的war包,把Axis2的war包部署到tomcat里,使用下面的地址就可以进入Axis2管理页面。
http://localhost:8080/axis2/axis2-admin
在D:\apache\apache-tomcat-5.5.34\webapps\axis2\WEB-INF\conf\axis2.xml里可以修改用户名密码,默认用户名和密码分别是admin和axis2。

Axis2(Java)开发WS客户端



参考网站(资料)

[1]Axis官网

Axis.apache.org

[2]Axis2介绍

http://baike.baidu.com/view/2435061.htm

[3]Ant官网

http://ant.apache.org/

[4]Axis2 Eclipse插件安装

http://axis.apache.org/axis2/java/core/tools/eclipse/plugin-installation.html

[5]《WebService大讲堂之Axis2(3):使用services.xml文件发布WebService》

http://www.pin5i.com/showtopic-23495.html

[6]《JSON Support in Axis2》

http://axis.apache.org/axis2/java/core/docs/json_support.html

术语清单

Message Transmission Optimized Mechanism(MTOM)

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息