微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

axis平台下webService的创建

今天查了大量资料来学习webService的创建,总的来说他有两种平台:Axis与XFire。看公司的同事都是使用的为Axis,因此,今天也就尝试了这种平台下webService的创建,具体步骤如下:

先得在eclipse下新建一个动态的web工程,然后,将下载好的axis中的jar包拷到此工程下(你可以新建一个lib的文件夹,直接拷到此文件夹下即可)。没下载axis的点击下载

然后我们新建一个简单的WebService类,如下:

package com.service;

public class HelloService {

	public String sayHello(String name){
		return name+"Hello";
	}
}
之后,进行如下操作:


接着,进入页面(在此页面中,在第一个选择条上必须要升到Test Service):

然后,进入下个页面,注意此页面显示你在那个类中(WebService)所写的方法,就相当于注解中的@WebMethod


一路点击next,直到出现start server按钮,点击运行tomcat,然后点击Finish按钮完成发布。

点击webservice Explore中的Operations中的sayHello方法


在username中输入测试数据:little gril,点击Go

在status栏中出现访问该service的返回值:Hello: little girl,表示service已经发布成功并且可以访问,相当于在页面中的输入URL:http://localhost:8080/webService/services,之后我们可以看到一个界面(注意红框中的要发布这个webService之后才会显示):


这样的话就表示你发布成功,直接可以通过客户端来访问啦!下面我们来编写客户端的代码,如下:

package com.client;

import java.rmi.remoteexception;

import javax.xml.namespace.QName;
import javax.xml.rpc.ServiceException;

import org.apache.axis.client.Call;
import org.apache.axis.client.Service;

/**
 * 客户端
 * @author sunny
 *
 */
public class HelloServiceClient {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		String username = "zhoulingbin";
		if (args.length != 0) {
			username = args[0];
		}
		// WebService的Location,在上图中可以找到,也可以在wsdl文件中找到。
		String endpoint = "http://localhost:8080/webService/services/HelloService";
		Service service = new Service();
		try {
			Call call = (Call) service.createCall();
			call.setTargetEndpointAddress(endpoint);
			// 要访问的method
			call.setoperationName(new QName("urn:HelloService","sayHello"));
			// 传参
			String returnValue = (String) call
					.invoke(new Object[] { username });
			System.out.println(returnValue);
		} catch (ServiceException e) {
			// Todo Auto-generated catch block
			e.printstacktrace();
		} catch (remoteexception e) {
			// Todo Auto-generated catch block
			e.printstacktrace();
		}

	}

}
OK,收工,饿了,回去吃饭啦!

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐