Axis2开发webservice总结
1 Web服务接口
@H_404_39@关于本章
本章描述内容如下表所示。
1.1 Web Service技术 |
介绍Web Service技术。 |
1.1 Web Service技术
1.1.1 Web Service@H_404_39@消息内容遵循的标准
l SOAP
所有Web Service消息符合WS-I基本纲要(WS-I Basic Profile Version 1.0:"Final Material")的SOAP使用定义。
编码方式为:“document/literal”。
发起业务请求时,在SOAP HEADER里设置timeStamp、sendAddress、platType、provType、TID、version、callerSID、providerSID、providerEID、providerECID、providerIFName、UID、callingType参数,然后在服务器端提取参数,进行相应处理。
l XML
所有Web Service消息符合WS-I基本纲要(WS-I Basic Profile Version 1.0:"Final Material")的XML使用定义。
l HTTP
所有Web Service消息符合WS-I基本纲要(WS-I Basic Profile Version 1.0:"Final Material")的HTTP使用定义。
@H_404_39@关于本章
本章描述内容如下表所示。
2.1开发前的准备 |
介绍在开发业务实例前的准备工作。 |
2.3客户端业务开发实例 |
介绍向用户开发helloword。 |
2.1 开发前的准备工作
2.1.1 PC@H_404_39@机配置要求
选择一台PC机作为开发平台。PC机的最低配置要求如表2-1所示。
表2-1 PC机最低配置要求表
配置 |
说明 |
操作系统 |
|
浏览器 |
IE6.0 |
P4 1.8GHz |
|
内存 |
512MB |
硬盘 |
10GB |
2.1.2 工具下载
在以下提供的工具下载页面中找到指定的下载链接,下载各个工具,并将其安装在C:/Program Files下。
http://java.sun.com/javase/downloads/index_jdk5.jsp
l jdk-1_5_0_13-windows-i586-p.exe下载链接。
http://192.18.108.145/ECom/EComTicketServlet/BEGINA3B0EEAA08A312C1FAEC55BAC2297BBB/-2147483648/2402513439/1/852050/851882/2402513439/2ts+/westCoastFSEND/jdk-1.5.0_13-oth-JPR/jdk-1.5.0_13-oth-JPR:3/jdk-1_5_0_13-windows-i586-p.exe
双击jdk-1_5_0_13-windows-i586-p.exe按照默认配置安装JDK1.5。
Eclipse(开发环境)
http://www.eclipse.org/downloads
l eclipse-SDK-3.3.1-win32.zip下载链接。http://www.eclipse.org/downloads/download.PHP?file=/eclipse/downloads/drops/R-3.3.1-200709211145/eclipse-SDK-3.3.1-win32.zip&url=http://download.actuatechina.com/eclipse/eclipse/downloads/drops/R-3.3.1-200709211145/eclipse-SDK-3.3.1-win32.zip&mirror_id=385
解压缩eclipse-SDK-3.3.1-win32.zip即可(不需安装)。
Tomcat(Web服务器)
http://tomcat.apache.org/download-60.cgi
l apache-tomcat-6.0.14.zip下载链接。
http://apache.mirror.PHPchina.com/tomcat/tomcat-6/v6.0.14/bin/apache-tomcat-6.0.14.zip
解压缩apache-tomcat-6.0.14.zip即可(不需安装)。
AXIS(SOAP引擎)
http://ws.apache.org/axis2/download.cgi
http://apache.mirror.PHPchina.com/ws/axis2/1_4/axis2-1.4-bin.zip
http://apache.mirror.PHPchina.com/ws/axis2/1_4/axis2-1.4-war.zip
解压缩axis2-1.4-bin.zip和axis2-1.4-war.zip即可(不需安装)。
2.1.3 环境变量配置
按照如下步骤配置JAVA_HOME和AXIS2_HOME环境变量。
如图2-1所示。
步骤 4 在图2-1中单击“环境变量”。
步骤 5 增加系统变量JAVA_HOME,变量值为JDK安装目录。
如图2-2所示。
图2-2 新建JAVA_HOME系统变量
CLAsspATH
%JAVA_HOME%/lib;%JAVA_HOME%/lib/dt.jar;%JAVA_HOME%/lib/tools.jar
步骤 7 在Path系统环境变量中增加axis2-1.4的bin目录,单击“确定”。
如图2-3所示。
图2-3 编辑Path系统环境变量
l 在设置环境变量的值时,新增的环境变量值与已存在的环境变量值之间用“;”隔开。
l 其中D:/axis2-1.4/bin需要根据实际情况设置。
步骤 9 环境变量界面里的“确定”
---结束
2.1.4 解压缩axis2
具体操作步骤如下。
步骤 2 将axis2.war拷贝到%TOME_HOME%/webapps目录下。
步骤 3 双击%TOME_HOME%/bin/startup.bat,启动Tomcat服务器。
----结束
启动过程会自动将axis2.war解压缩,在%TOME_HOME%/webapps 下生成axis2目录。
2.2 通过JAVA生成WSDL文件
2.2.1 写java@H_404_39@类
步骤 1 在Eclipse中新建一个java工程。
步骤 2 单击“file > new > java>project”。如图2-4所示。
步骤 3 输入工程名,其他默认,单击“finish”。如图2-5所示。
@L_502_130@
步骤4 生成类 hello.java
步骤 4 根据接口文件在类中写方法和参数,如图2-9所示。
2.2.2 使用AXIS2@H_404_39@的工具生成wsdl文件
步骤 1 拷贝生成的java文件的.class文件。需要拷贝bin目录下面所有的包,如图2-10所示。
步骤 2 复制到axis2的bin目录下,如图2-11所示。
图2-7 axis2的bin目录
使用java2WSDL命令将“Hello.class”转化为“Hello.wsdl”文件。如图2-13所示。
l 中间的–of,–cn等字符请参照本地的系统所给的命令,可以执行java2WSDL命令查看。
----结束
2.2.3 修改@H_404_39@WSDL文件使其符合规范
查看规范的wsdl文件,将命名空间统一,按照规范wsdl中的标准来修改。
2.3 客户端业务开发实例
2.3.1 使用工具将@H_404_39@wsdl文件生成java源码
使用工具按照如下步骤将wsdl文件生成java源码。
步骤 1 运行cmd,进入命令行控制台,进入axis2的bin目录下,如图2-25所示。
步骤 2 使用“WSDL2java.bat”生成一个客户端WSDL2java.bat -uri,如图2-26所示。
步骤 3 可以看到bin目录下产生了一个src文件夹,准备将其导入到eclipse工程中,如图2-27所示。
步骤 4 在eclipse中创建一个普通的java工程,操作步骤为单击“file > new > javaproject”,如图2-28所示。
图2-11 创建java工程
步骤 5 创建名为hello_clint的工程
步骤 6 点开新建的工程,可以看到工程下的库和一个源文件夹,导入axis2所需的jar包。
如下图:
----结束
2.4 生成服务端代码
2.4.1 安装配置必要工具
一些必要工具的安装,配置具体步骤如下。
步骤 1 获得一个tomcat安装包和axis2-1.4-war.zip。
步骤 2 安装tomcat,解压axis2-1.4-war.zip到%TOMCAT_HOME%/webapps目录下。
步骤 3 双击% TOMCAT _HOME%/bin/startup.bat,启动Tomcat服务器。
步骤 4 启动后看是否在% TOMCAT _HOME%/webapps下生成了axis2目录,如生成则说明axis2安装成功。
2.4.2 生成服务端源代码
步骤 1 参见2.3.1 步骤 1。
步骤 2 使用WSDL2java.bat -uri weatherInfoNotify.wsdl –ss –sd生成服务端代码。
步骤 3 能在bin目录下看到新增了src和resources文件夹。
步骤 4 参见2.3.1 步骤 4在eclipse中创建一个普通的java工程,操作步骤为单击“file > new > javaproject”,如图2-28所示。
步骤 5 参见2.3.1 步骤 5,把名字命名为hello_server。
步骤 6 参见2.3.1 步骤 6,和2.3.1 步骤 8,完成后如图2-37所示
其中HelloSkeleton.java为业务代码实现类,需要重写实现方法。
----结束
2.4.3 将服务端导出并发布到tomcat@H_404_39@上
步骤 1 将工程导出为一个xxx.aar包(本例为hello.aar),放到% TOMCAT _HOME%/webapps/axis2/WEB-INF/services中,如图2-39 所示。
步骤 2 选中axis2的bin目录下的resources文件夹中的services.xml文件。
步骤 3 将选中文件放到weather.aar包中的meta-inf目录下
点击hello_server build.xml文件生成hello.aar包,将工程文件中的service.xml替换hello.aar包中/ /meta-inf中的service.xml。
然后放在 $tomcat_home/ /webapps/axis2/WEB-INF/services目录下,然后启动tomcat.
Hello.aar位置如图所示:
启动tomcat 如图所示,表示发布成功
2.5 简单调测
步骤 1 单击eclipse客户端工程中的Test.class类,如图2-46所示。
3 心得
3.1 编写wsdl文件
@H_404_39@3.1.1 修改wsdl文件
利用wsdl文件通过
WSDL2java.bat -uri hello.wsdl –ss –sd生成服务端代码。
WSDL2java.bat -uri hello.wsdl 客户端代码。
@H_404_39@3.1.2 修改生成的服务端代码
生成的骨架代码为业务实现方法,需要重写实现方法 类名为 *.Skeleton.java
@H_404_39@3.1.3 发布 *.aar包
通过 服务端代码build.xml生成 aar包,将 工程目录recourse/service.xml 替换 /build/lib/*.aar包中的service.xml文件。然后copy到tomcat目录 //webapps/axis2/WEB-INF/services 下。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。