首先是XFire:
下载XFire库:
distribution和XFire-all,distribution是一些依赖包,例子及文档,XFire-all是XFire的核心包.
然后是根据文档中的Quick Start来实现一个Web Service,Quick Start中举的例子在distibution目录下的example/book下.根据Quick Start来实现一个Web Service的过程是非常简单的,文档上这么讲而且事实也是非常简单的,如果在Eclipse中也就是包括以下几个步骤:
- 设置目录结构,设置类路径.
- 编写一个要作为Web Service发布的java类.
- 创建XFire配置.
- 修改web.xml,为XFire配置Servlet.
- 因为Lomboz会自动部署,那么剩下的就是测试Web Service部署是否成功了.
下面就开始在Eclipse中开始以上列出的步骤:
JDK:JSDK 1.4
IDE:
Eclipse3.1.2
Plugins:
lomboz-wtp-emf-gef-jem(其中已经包含有
wtp-sdk-R-1.0.1-200602171228 ,
emf-sdo-xsd-SDK-2.1.2,
GEF-SDK-3.1.1 ,
JEM-SDK-1.1.0.1)
Container:
Tomcat5.0
1.新建一个dynamic Web Project 名称为testXFire,添加XFire库(包括XFire-distibution中lib中所有的.jar文件和xfire-all-1.0.jar)到工程中,做完上述工作后整个工程结构如下图:
2.编写一个需要作为Web Service发布的java类:
java 代码
- package com.bws.XFireDemo;
- /**
- * @author xiaochen.wang E-mail:xiaochen.wang@transcom.net.cn
- * @version 创建时间:2007-10-22 下午02:16:29
- * 类说明
- */
- public class BookService {
- private Book onlyBook;
- public BookService()
- {
- onlyBook = new Book();
- onlyBook.setAuthor("Dan Diephouse");
- onlyBook.setTitle("Using XFire");
- onlyBook.setIsbn("0123456789");
- }
- public Book[] getBooks()
- {
- return new Book[] { onlyBook };
- }
- public Book findBook(String isbn)
- {
- if (isbn.equals(onlyBook.getIsbn()))
- return onlyBook;
- return null;
- }
- }
java 代码
- package com.bws.XFireDemo;
- /**
- * @author xiaochen.wang E-mail:xiaochen.wang@transcom.net.cn
- * @version 创建时间:2007-10-22 下午02:16:56
- * 类说明
- */
- public class Book {
- private String title;
- private String isbn;
- private String author;
- public String getIsbn()
- {
- return isbn;
- }
- public void setIsbn(String isbn)
- {
- this.isbn = isbn;
- }
- public String getTitle()
- {
- return title;
- }
- public void setTitle(String title)
- {
- this.title = title;
- }
- public String getAuthor()
- {
- return author;
- }
- public void setAuthor(String author)
- {
- this.author = author;
- }
- }
3。配置 service.xml文件
xml 代码
- <beans xmlns="http://xfire.codehaus.org/config/1.0">
- <service>
- <name>BookService</name>
- <namespace>http://com.bws.XFireDemo/BookService</namespace>
- <serviceClass>com.bws.XFireDemo.BookService</serviceClass>
- </service>
- </beans>