使用XFire和axis搭建简单的WebService服务端和客户端

第一次写博客,工作需要用到XFire搭建WebService,于是自己着手试着搭建了一个用于测试使用。不足之处望各位大神们给予指点,谢谢。

第一、环境MyEclipse8.6+XFire+Tomcat+axis

      由于是自己第一次搭建,XFire和Tomcat都使用的是MyEclipse8.6自带,本来想用MyEclipse10来搭建,但实在不知道怎么把XFire插件弄上去,不知道有哪位大神可以告诉我。

第二、先是服务端

      1、新建Web Service Project,选择XFire如下图,完成即可
使用XFire和axis搭建简单的WebService服务端和客户端
2、编写接口文件service.java和实现类文件serviceImpl.java
public interface service {
   public String hello();
}

public class serviceImpl implements service {

	public String hello() {
		return "hello webservice";
	}
}

3、配置文件services.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xfire.codehaus.org/config/1.0">
   <service>  
    <name>HelloService</name>  
    <serviceClass>com.service.service</serviceClass>  
    <implementationClass>com.service.serviceImpl</implementationClass>  
</service>   
</beans>

这样一个功能非常简单的服务端就出来了。部署到Tomcat启动即可。

访问地址http://localhost:8080/webservice_server/services,发现如下

使用XFire和axis搭建简单的WebService服务端和客户端
证明服务端成功。点击[wsdl],可得到地址http://localhost:8080/webservice_server/services/HelloService?wsdl,里面有各种参数,这个我就不太明白了。有关一些接口的参数和返回值,看上去还是比较容易明白(连猜带蒙)。

第二、客户端

1、随便建立一个工程Java和Web工程都可以,将Axis中lib文件放到工程的lib下面
使用XFire和axis搭建简单的WebService服务端和客户端
2、需要用到axis来生成客户端文件:我的axis放在E盘
     编写一个bat文件用于通过Axis来生成客户端需要的文件,代码如下
set Axis_Lib=E:\axis-1_4\lib
set Java_Cmd=java -Djava.ext.dirs=%Axis_Lib%
set Axis_Servlet= http://localhost:8080/webservice_server/services/HelloService?wsdl%Java_Cmd% org.apache.axis.wsdl.WSDL2Java -u %Axis_Servlet%
运行此文件得到一个文件夹将其中的文件复制到客户端项目中即可:
使用XFire和axis搭建简单的WebService服务端和客户端
3、测试是否能成功

    在客户端编写一个测试类test.java
package com.test;

import com.service.HelloServiceHttpBindingStub;
import com.service.HelloServiceLocator;

public class test {

	public static void main(String[] args) {
		
		HelloServiceLocator ltor=new HelloServiceLocator();
		
		HelloServiceHttpBindingStub stub=null;
		
		try{
			stub=(HelloServiceHttpBindingStub) ltor.getHelloServiceHttpPort();
			String tt=stub.hello();
			System.out.println(tt);
		}catch (Exception e) {
			// TODO: handle exception
		}
	}
}

运行可以在控制台看到结果
使用XFire和axis搭建简单的WebService服务端和客户端
完成。。。

你可能感兴趣的:(webservice,xfire,axis)