Axis2开发webservice总结
Axis2开发webservice总结 ? ? 1 Web服务接口关于本章 本章描述内容如下表所示。
? 1.1 Web Service技术1.1.1 Web Service消息内容遵循的标准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使用定义。 2 开发流程关于本章 本章描述内容如下表所示。
2.1 开发前的准备工作2.1.1 PC机配置要求选择一台PC机作为开发平台。PC机的最低配置要求如表2-1所示。 表2-1 PC机最低配置要求表
? 2.1.2 工具下载
在以下提供的工具下载页面中找到指定的下载链接,下载各个工具,并将其安装在C:/Program Files下。 JDK1.5 l?????????? JDK1.5下载页面。 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 l?????????? 安装JDK。 双击jdk-1_5_0_13-windows-i586-p.exe按照默认配置安装JDK1.5。 Eclipse(开发环境) l?????????? 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 l?????????? 安装Eclipse。 解压缩eclipse-SDK-3.3.1-win32.zip即可(不需安装)。 Tomcat(Web服务器) l?????????? Tomcat6.0下载页面。 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 l?????????? 安装Tomcat。 解压缩apache-tomcat-6.0.14.zip即可(不需安装)。 AXIS(SOAP引擎) l?????????? AXIS2下载页面。 http://ws.apache.org/axis2/download.cgi l?????????? axis2-1.4-bin.zip下载链接。 http://apache.mirror.phpchina.com/ws/axis2/1_4/axis2-1.4-bin.zip l?????????? axis2-1.4-war.zip下载链接。 http://apache.mirror.phpchina.com/ws/axis2/1_4/axis2-1.4-war.zip l?????????? 安装AXIS。 解压缩axis2-1.4-bin.zip和axis2-1.4-war.zip即可(不需安装)。 2.1.3 环境变量配置按照如下步骤配置JAVA_HOME和AXIS2_HOME环境变量。 ??????????????????????????????? 步骤 1???? 右键单击“我的电脑”。 ??????????????????????????????? 步骤 2???? 选择“属性”。 ??????????????????????????????? 步骤 3???? 单击“高级”页签。 如图2-1所示。 图2-1 系统属性
? ??????????????????????????????? 步骤 4???? 在图2-1中单击“环境变量”。 ??????????????????????????????? 步骤 5???? 增加系统变量JAVA_HOME,变量值为JDK安装目录。 如图2-2所示。 图2-2 新建JAVA_HOME系统变量
? ??????????????????????????????? 步骤 6???? 增加系统变量CLASSPATH。 l?????????? 变量名: CLASSPATH l?????????? 变量值: %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需要根据实际情况设置。 ??????????????????????????????? 步骤 8???? 单击编辑用户变量界面里的“确定”。 ??????????????????????????????? 步骤 9???? 环境变量界面里的“确定” ---结束 2.1.4 解压缩axis2具体操作步骤如下。 ??????????????????????????????? 步骤 1???? 解压缩axis2-1.4-war.zip。 ??????????????????????????????? 步骤 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类??????????????????????????????? 步骤 1???? 在Eclipse中新建一个java工程。 ??????????????????????????????? 步骤 2???? 单击“file > new > java>project”。如图2-4所示。 图2-4 新建java工程 ? ? ??????????????????????????????? 步骤 3???? 输入工程名,其他默认,单击“finish”。如图2-5所示。 图2-5 输入工程名
? 步骤4 ?生成类 hello.java ??????????????????????????????? 步骤 4???? 根据接口文件在类中写方法和参数,如图2-9所示。 图2-6 类中写的方法和参数
? 2.2.2 使用AXIS2的工具生成wsdl文件??????????????????????????????? 步骤 1???? 拷贝生成的java文件的.class文件。需要拷贝bin目录下面所有的包,如图2-10所示。 ? ??????????????????????????????? 步骤 2???? 复制到axis2的bin目录下,如图2-11所示。 图2-7 axis2的bin目录 ? 使用java2WSDL命令将“Hello.class”转化为“Hello.wsdl”文件。如图2-13所示。 图2-8 转化文件 ?
? 生成的wsdl文件如下: ? ? l????? 使用全路径。 l????? 中间的–of,–cn等字符请参照本地的系统所给的命令,可以执行java2WSDL命令查看。 ----结束 ? 2.2.3 修改WSDL文件使其符合规范查看规范的wsdl文件,将命名空间统一,按照规范wsdl中的标准来修改。 2.3 客户端业务开发实例2.3.1 使用工具将wsdl文件生成java源码使用工具按照如下步骤将wsdl文件生成java源码。 ??????????????????????????????? 步骤 1???? 运行cmd,进入命令行控制台,进入axis2的bin目录下,如图2-25所示。 ? ? ??????????????????????????????? 步骤 2???? 使用“WSDL2java.bat”生成一个客户端WSDL2java.bat -uri,如图2-26所示。 图2-9 客户端源码 ?
??????????????????????????????? 步骤 3???? 可以看到bin目录下产生了一个src文件夹,准备将其导入到eclipse工程中,如图2-27所示。 图2-10 Src文件夹 ? ? ??????????????????????????????? 步骤 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文件夹。 ? 新增的文件夹会覆盖以前的src文件夹,请备份以前的文件夹。 ??????????????????????????????? 步骤 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所示 图2-12 生成代码
? 其中HelloSkeleton.java为业务代码实现类,需要重写实现方法。 ----结束 2.4.3 将服务端导出并发布到tomcat上??????????????????????????????? 步骤 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所示。 图2-13 Test.class类 ? ? 3 心得3.1 编写wsdl文件3.1.1 修改wsdl文件利用wsdl文件通过 WSDL2java.bat -uri ?hello.wsdl –ss –sd生成服务端代码。 WSDL2java.bat -uri hello.wsdl 客户端代码。 3.1.2 修改生成的服务端代码? 生成的骨架代码为业务实现方法,需要重写实现方法 类名为 *.Skeleton.java 3.1.3 发布 *.aar包通过 服务端代码build.xml生成 aar包,将 工程目录recourse/service.xml 替换 /build/lib/*.aar包中的service.xml文件。然后copy到tomcat目录 //webapps/axis2/WEB-INF/services 下。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |