[JavaWeb基础] 027.JAVA中使用Axis搭建webservice-示例实现(二)

在上面的一个文章中,我们介绍了如何搭建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();
		}
	}
}

 

 

 

本站文章为 宝宝巴士 SD.Team 原创,转载务必在明显处注明:(作者官方网站: 宝宝巴士 

转载自【宝宝巴士SuperDo团队】 原文链接: http://www.cnblogs.com/superdo/p/4952259.html

 

原文地址:https://www.cnblogs.com/superdo/p/4952259.html