资源预览内容
第1页 / 共12页
第2页 / 共12页
第3页 / 共12页
第4页 / 共12页
第5页 / 共12页
第6页 / 共12页
第7页 / 共12页
第8页 / 共12页
第9页 / 共12页
第10页 / 共12页
亲,该文档总共12页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
使用xFire发布Web Service目录1.准备工作11.1.开发环境11.2.下载依赖包12.开发Web Service12.1.新建工程12.1.1.新建工程xFire12.1.2.拷贝依赖包12.1.3.修改配置文件12.2.传递简单数据类型的Web Service22.2.1.新建功能接口HelloXFire.java22.2.2.功能接口的实现类HelloXFireImpl.java22.2.3.创建services.xml文件32.2.4.启动Tomcat,出现如下图的加载信息,则说明发布成功。42.2.5.查看Web Service列表和wsdl文件42.3.传递复杂数据类型与自定义类型的Web Service42.3.1.了解XFire的绑定机制Aegis42.3.2.新建User.java52.3.3.新建功能接口HelloXFireObj.java52.3.4.功能接口的实现类HelloXFireObjImpl.java62.3.5.services.xml文件添加节点72.3.6.查看Web Service列表和wsdl文件83.调用xFire发布的Web Service83.1.准备工作83.1.1.新建工程xFireClient83.1.2.拷贝依赖包83.2.调用83.2.1.如何得到wsdl文件83.2.2.新建ClientXFire.java83.2.3.测试结果114.备注11使用xFire发布Web Service1. 准备工作1.1. 开发环境eclipse3.5.2tomcat6.01.2. 下载依赖包xFire主页:http:/xfire.codehaus.org/xFire下载:http:/xfire.codehaus.org/Download点击xfire-distribution-1.2.6.zip下载最新包。下载后的文件xfire-distribution-1.2.6.zip,将其解压到任意位置。2. 开发Web Service2.1. 新建工程2.1.1. 新建工程xFire新建一个Dynamic Web Project,项目名为xFire。2.1.2. 拷贝依赖包将xfire-1.2.6lib下的全部jar包放入工程的WEB-INFlib文件夹下。将xfire-1.2.6下的xfire-all-1.2.6.jar包放入工程的WEB-INFlib文件夹下。2.1.3. 修改配置文件修改web.xml文件,添加内容如下:XFireServletorg.codehaus.xfire.transport.http.XFireConfigurableServlet0XFireServlet/servlet/XFireServlet/*XFireServlet/services/*2.2. 传递简单数据类型的Web Service2.2.1. 新建功能接口HelloXFire.javapackage com.xfire.services;public interface HelloXFire public String sayHello();public String sayHelloByName(String name);public String sayHelloByNameAndAge(String name, int age);2.2.2. 功能接口的实现类HelloXFireImpl.javapackage com.xfire.services;public class HelloXFireImpl implements HelloXFire/无参数的方法public String sayHello()return 你好 + ! by xFire.;/需要一个参数的方法public String sayHelloByName(String name)return 你好 + name + ! by xFire.;/需要两个参数的方法public String sayHelloByNameAndAge(String name, int age)return 你好, + age + 岁的 + name + ! by xFire.;2.2.3. 创建services.xml文件在src下或者直接在webappWEB-INF下创建文件夹META-INF,在META-INF下边在创建一个目录xfire,在xfire目录里边创建一个services.xml文件。目录结构如下:services.xml文件内容如下:HelloXfirehttp:/www.xfiretest.comcom.xfire.services.HelloXFirecom.xfire.services.HelloXFireImpl说明:之间为发布的服务名。之间为自定命名空间。之间为功能接口文件。之间为功能接口实现文件。2.2.4. 启动Tomcat,出现如下图的加载信息,则说明发布成功。2.2.5. 查看Web Service列表和wsdl文件访问http:/localhost:8080/xFire/services,如下图:点击 wsdl 即可查看其wsdl描述文件。2.3. 传递复杂数据类型与自定义类型的Web Service2.3.1. 了解XFire的绑定机制Aegis首先说明,Aegis为XFire默认的绑定方式,那么何时需要绑定?Aegis支持的类型1).基本类型:int,double,float,long,byte,short,String,decimal2).数组(Array)3).集合类型(Collection)4).日期类型:java.util.Date, java.util.Calendar, java.sql.Timestamp, java.sql.Date, java.sql.Time5).XML:org.w3c.dom.Docmument, org.jdom.Element, XMLStreamReader, XML文本6).包含以上类型的自定义类型Aegis需要绑定的类型1).集合类型(Collection)2).包含集合类型的自定义类型当使用JDK1.4时,或者是使用了JDK1.5及以上版本但是没有使用泛型的时候、当遇到需要映射POJO或配置WebService接口方法返回类型(如集合类型)时,需要进行绑定,此时aegis的绑定为建立.aegis.xml的文件。2.3.2. 新建User.java代码如下:package com.xfire.domain;public class User private String name;private int age;public User(String name, int age)this.name = name;this.age = age;public String getName() return name;public void setName(String name) this.name = name;public int getAge() return age;public void setAge(int age) this.age = age;2.3.3. 新建功能接口HelloXFireObj.javapackage com.xfire.services;import java.util.List;import com.xfire.domain.User;public interface HelloXFireObj public User getUser(String name, int age);public List getList();public List getUserList();public String getStringForArray(int j);public String getTwoStringForArray();public User getUserForArray(int j);2.3.4. 功能接口的实现类HelloXFireObjImpl.java列举出自定义类型User、复杂类型List、复杂的自定义类型List、一维数组、二维数组,代码如下:package com.xfire.services;import java.util.ArrayList;import java.util.List;import com.xfire.domain.User;public class HelloXFireObjImpl implements HelloXFireObj /自定义类型publi
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号