首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

XFire开发Web Services入门例证

2012-11-08 
XFire开发Web Services入门例子最近在学习web services,我找到的视频很有限,讲的都是很基础,例子也很简单,

XFire开发Web Services入门例子

最近在学习web services,我找到的视频很有限,讲的都是很基础,例子也很简单,自己动手敲了敲在这里和大家分享一下,希望能对初学者有所帮助。

Web Services服务器端开发

服务器端开发用的是XFire,版本是1.2.6,XFire现在已经成apache下面的一个项目CXF的一部分了,老早就不更新版本了,XFire过不过时我是不知道,不过还有一些人在用。

开发环境是:myeclipse8.6,Tomact6.0

新建一个项目,可以是web project也可以是web service project,区别不大。项目建好之后:(项目名假设为:WS_Server)

1、下载XFire1.2.6.jar

加压下载好的文件,将lib文件夹下所有jar包添加到项目中,并且将xfire-all-1.2.6.jar加入到项目中。

2、编写服务接口

包名:com.service ?类名:CalculatorService.java

?

package com.service;public interface CalculatorService {public int add(int a ,  int b );public int substract(int a , int b);}

?


3、编写服务接口实现类

包名:com.service.impl ?类名:CalculatorServiceImpl.java

?

package com.service.impl;import com.service.CalculatorService;public class CalculatorServiceImpl implements CalculatorService {public int add(int a, int b) {return a+b;}public int substract(int a, int b) {return a - b ;}}

?

4、修改web.xml

?

<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">  <servlet>    <servlet-name>XFireServlet</servlet-name>    <servlet-class>org.codehaus.xfire.transport.http.XFireConfigurableServlet</servlet-class>    <load-on-startup>0</load-on-startup>  </servlet>    <servlet-mapping>    <servlet-name>XFireServlet</servlet-name>    <url-pattern>/services/*</url-pattern>  </servlet-mapping>    <servlet-mapping>    <servlet-name>XFireServlet</servlet-name>    <url-pattern>/services/XFireServlet/*</url-pattern>  </servlet-mapping>    <welcome-file-list>    <welcome-file>index.jsp</welcome-file>  </welcome-file-list></web-app>

5、配置服务

?

在src目录下新建WEB-INF文件夹,在WEB-INF文件夹下新建xfire文件夹,在xfire下新建services.xml文件。

name表示服务的名字可以自己随便定义,serviceClass指明服务接口类,implementationClass指明服务实现类

?

<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://xfire.codehaus.org/config/1.0"><service><name>CalculatorService</name><serviceClass>com.service.CalculatorService</serviceClass><implementationClass>com.service.impl.CalculatorServiceImpl</implementationClass></service></beans>

如果新建的是web service project会在项目根目录下有一个WebServices文件夹,该文件夹下有services.xml文件,这个文件和自己在第五步配置服务中新建的services.xml是否有联系我还不得而知,貌似直接使用这个services.xml文件而不新建也是可以的,但是若新建了则这个自动生成的文件最好不要删除,我记得会报错。这两种情况没有亲自实践。

?

6、启动服务

将该项目添加到tomcat中,启动tomcat,在浏览器中输入http://localhost:8080/WS_Server/services就能看到该项目下所有服务,点击服务后面的[wsdl],就会看到服务的wsdl文件内容。


项目文件目录结构如下:

XFire开发Web Services入门例证

至此服务器端构建结束。


Web Services客户端开发

客户端的开发主要有三种方式,可参见文章http://blog.csdn.net/jadyer/article/details/6082948,我决得第二种方式更好一些,理解起来很容易,只不过需要在客户端添加与服务器端一致的接口和POJO,包名类名都必须一致。第一种方式中若传递的参数是服务器端的对象貌似没办法传,而第三种方法在客户端只能使用一个服务,这就很囧了。客户端开发我就不赘述了,上面提到的那篇文章写的很好。

热点排行