在上面的一个文章中,我们介绍了如何搭建Axis2的环境,也就是在MyEclipse中加入Axis的开发插件,那么,准备工作做好了之后,下面我们就用上一章的工具去搭建一个WebService的简单例子。
1.创建一个Java web project,这个就不详细描述了。
2.创建一个WSDL
3.生成代码
4.生成完代码的目录结构如下
5.修改SayHelloSkeleton代码
/**
* SayHelloSkeleton.java
*
* This file was auto-generated from WSDL
* by the Apache Axis2 version: 1.4 Built on : Apr 26, 2008 (06:24:30 EDT)
*/
package org.example.www.sayhello.server;
import org.example.www.sayhello.SayHello;
import org.example.www.sayhello.SayHelloResponse;
/**
* SayHelloSkeleton java skeleton for the axisService
*/
public class SayHelloSkeleton {
/**
* Auto generated method signature
*
* @param sayHello
*/
public org.example.www.sayhello.SayHelloResponse SayHello(
org.example.www.sayhello.SayHello sayHello) {
try{
SayHelloResponse response = new SayHelloResponse();
response.setOut("Hi," + sayHello.getIn() + ".How are you?");
return response;
} catch (UnsupportedOperationException e){
throw e;
}
}
}
6.打包
A.选择菜单“ File->New->Other”,从对话框中选取“ Axis2 Wizards”下面的“ Axis2 Services Archive”.点击“ Next”进入下一个页面 。
B.选择编译好的 class文件所在目录(本项目应该是 WebRoot下面 WEB-INF/classes),“ Next”进入下一步。
C.选择 WSDL文件所在目录,此处为 src目录下的 SayHello.wsdl文件。“ Next”,再“ Next”。选择 services.xml文件。
D.点击“ Next”,将记入最后一个页面,此处有两个选项,一个是输出目录一个是处处文件名称。这里的输出文件名称给的是 SayHello。点击“ Finish”完成。
7.部署
A.将打包好的文件 SayHello.jar拷贝到 Tomcat中已经部署的 Axis2应用的 WEB-INF/services目录下面。
B.重新启动 Tomcat。
C.打开浏览器,输入 http://127.0.0.1:8080/axis2 ,并点击其中的“ services”链接可以看到 SayHello已经被部署。点击 SayHello提供的连接可以看到与之对应的 WSDL。
8.测试
package org.example.www.sayhello.test;
public class SayHelloTest {
public static void testSayHello() throws java.lang.Exception {
String url = "http://localhost:8080/axis2/services/SayHello";
org.example.www.sayhello.SayHelloStub stub = new org.example.www.sayhello.SayHelloStub(url);
org.example.www.sayhello.SayHelloStub.SayHello request = new org.example.www.sayhello.SayHelloStub.SayHello();
request.setIn("Sally");
System.out.println(stub.SayHello(request).getOut());
}
public static void main(String[] args) {
try {
testSayHello();
} catch (Exception e) {
e.printStackTrace();
}
}
}
本站文章为宝宝巴士)