Chinaunix首页 | 论坛 | 博客
  • 博客访问: 539245
  • 博文数量: 260
  • 博客积分: 10435
  • 博客等级: 上将
  • 技术积分: 1939
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-24 14:50
文章分类

全部博文(260)

文章存档

2011年(22)

2010年(209)

2009年(29)

我的朋友

分类: Java

2011-01-03 19:06:48

标题:基于xfire的web service搭建
出处:小强的家
时间:Sun, 12 Apr 2009 12:30:29 +0000
作者:xiaojiit
地址:www.sharejava.cn/blog/read.php/12.htm

内容:
这里,用的xfire1.2.6和Spring 2.0,开发工具用的MyEclispe,虽然MyEclipse自带了开发xfire的插件,但为了不依赖开发工具,所以以下为手动创建。
Xfire 可以很好的和Spring 集成,下面分两部分介绍
纯Xfire 的web service
1.1、先建一个web 项目,打开下载到的xfire包,将lib下的所有 Jar包和modules目录下的所有Jar包拷到web 项目的WEB-INF/lib目录下。
1.2、修改web.xml文件,添加如下内容,以支持xfire:


XFireServlet
org.codehaus.xfire.transport.http.XFireConfigurableServlet

0


XFireServlet
/services/*

这样,便可以通过 路径来访问所有发布的web services了。
1.3、在项目下的WEB-INF目录下建立META-INF/xfire/这个目录,在此目录下建立services.xml文件,这个文件用来添写我的要发布的web services。文件内容如下所示:



HelloService
com.services.HelloService  com.services.HelloServiceImpl


文件的内容如下:
:发布一个web service;
:发布web service的名称;
:提供服务的接口类;
:实现服务接口类的具体类。

注:这里用的Spring 2.0,如果是用xfire 自带的Spring1.2.6,应该将  xmlns=”″ 放到里去定义。
1.4、下面,将这个web 项目,发布到tomcat下,便可以使用

来调用这个web service了。
于Spring 集成的Xfire 开发web services,这里用的是spring 2.0,如果是spring2.5,需要将spring-webmvc.jar添加进来。

下面说与Spring 集成的Xfire开发步骤
Spring 与xfire 有三种结合方式,下面以直接与spring集成的方法说明。
(通过Spring的org.springframework.web.servlet.DispatcherServlet)。
2.1、将xfire与spring的JAR包放到web 项目的classPath
2.2、修改web.xml,使其支持Spring 与xfire,添加如下内容:


contextConfigLocation

/WEB-INF/conf/applicationContext.xml
classpath:org/codehaus/xfire/spring/xfire.xml




org.springframework.web.context.ContextLoaderListener



xfire

org.springframework.web.servlet.DispatcherServlet

0


xfire
/service/*

2.3、根据web.xml的内容,创建Spring的配置文件:applicationContext.xml
在本例中,将此文件放在WEB-INF/conf目录下。内容如下:





这里,定义了一个bean,这里用的是web services接口的实现类。
2.4、在WEB-INF下创建xfire-servlet.xml文件,这里的xfire是org.springframework.web.servlet.DispatcherServlet这个servlet的名称,应该根据自己的进行修改
内容如下:










//URL,访问地址





lazy-init=”false” abstract=”true”>










com.service.HelloService


这样便生成一个web Service,可以通过域名来访问,并编写客户端代码了。

另一种方式,使用xfire自带的org.codehaus.xfire.spring.XFireSpringServlet这个类进行设置。
方法如下:
修改web.xml,添加如下内容:


contextConfigLocation
/WEB-INF/applicationContext.xml



org.springframework.web.context.ContextLoaderListener



XFireServlet

org.codehaus.xfire.spring.XFireSpringServlet



XFireServlet
/service/*

这样,便不必使用xfire-servlet.xml文件,直接在applicationContext.xml里添加Web Service的Bean就可以了。applicationContext.xml代码如下:




/>

>



value=”com.service.service.HelloService” />

但个Web Service是没有任何安全性可言的,任何拿到WSDL的人都可以轻松地构造客户端程序访问我们的Web Service服务。

阅读(2110) | 评论(0) | 转发(0) |
0

上一篇:java nio

下一篇:java futuretask

给主人留下些什么吧!~~