使用Xfire构建Java WebService应用

           现在java中开发webService的东东好像有2个:XFrie和AXIS,当然,还有SUN自己的JWSDP,可能还有很多,但是我就知道一个myeclipse5.5.1自己带的XFrie1.2,当然了,实际的应用中也没用过,写出来就算是个参考吧。

           XFire是一个免费的开源SOAP框架,它可以帮你快速开发基于Java的WebService应用。把你从繁琐的WebService配置中解放出来,你不再需要了解WebService是如何具体运作的,你仅仅需要关注的是如何更好地实现你的业务逻辑。

           那现在就开始我们的Xfire应用之旅吧,首先从xfire.codehaus.org网址下载Xfire,这里我们选择1.2.6版本。JDK我们选择1.5版本,如果没有你可以到SUN公司的官方网站(java.sum.com)上下载,Web服务器这里我们选择Tomcat,你可以到tomcat.apache.org网站上下载最新的版本。

一 安装Tomcat

           所有配置选择默认,安装完成后Tomcat的根目录一般为:C:/Program Files/Apache Software Foundation/Tomcat 6.0,使用资源浏览器,导航到Tomcat的服务目录,C:/Program Files/Apache Software Foundation/Tomcat 6.0/wabapps 在下面建一个你自己应用目录,目录名自取。我这里命名为bos。

二 创建业务功能

           为简单起见,这里我们使用常规的HelloWorld。首先定义一个interface,此interface用于对外提供服务,可以说是对外的一个界面吧!然后再为该interface实做一个实现class.具体代码如下:

//interface

package com.hk.bos.xfire;

public interface IHelloWorld {

public String showMessage(String message);
}

//implement class

package com.hk.bos.xfire;

public class HelloWorld implement IHelloWorld {

public String showMessage(String message){

           System.out.println("the client message : "+message);

}
}

好了业务功能创建完成,现在我们就开始Xfire的配置吧!

三 Xfire的配置

         回到我们第一步创建的应用目录,本例为:C:/Program Files/Apache Software Foundation/Tomcat 6.0/wabapp/bos.

在此目录下建两个文件夹:classes 和 lib,建完后再建一个名为web.xml的文件。此文件的内容如下:

<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- START SNIPPET: webxml -->
<!DOCTYPE web-app
    PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web-app_2_3.dtd">
   
<web-app>

<servlet>
    <servlet-name>XFireServlet</servlet-name>
    <display-name>XFire Servlet</display-name>
    <servlet-class>
        org.codehaus.xfire.transport.http.XFireConfigurableServlet
    </servlet-class>
</servlet>

<servlet-mapping>
    <servlet-name>XFireServlet</servlet-name>
    <url-pattern>/servlet/XFireServlet/*</url-pattern>
</servlet-mapping>

<servlet-mapping>
    <servlet-name>XFireServlet</servlet-name>
    <url-pattern>/services/*</url-pattern>
</servlet-mapping>

</web-app>

看出什么来了吗? 对,这就是Servlet的标准配置。它的意思就是将所有的前缀为:http://yourserver:port/bos/servlet/XFireServlet/http://yourserver:port/bos/services的请求交由XFireServlet处理,而这个Servlet就是Xfire已经为我们开发好的,我们不必要做任何修改。

将你应用所要用的lib包(包括Xfire的所要用到的所有支持包)全部Copy到刚才所建的lib目录下。

再进到刚才所建的classes 目录下,在此目录下建以下层级目录META-INF/xfire目录,再在此目录中建一个名为services.xml文件。文件内容如下:

<beans xmlns="http://xfire.codehaus.org/config/1.0">
<service>
<name>HelloWorld</name>
<namespace>http://www.boshk.com/HelloWorld</namespace>
<serviceClass>
    com.hk.bos.xfire.HelloWorld </serviceClass>
<implementationClass>
   com.hk.bos.xfire.HelloWorld
</implementationClass>
</service>
</beans>

这是XfireServlet所要使用到的配置信息,表明信息不用我说你也应该知道了,其中name表示单个Service的名称,外部将使用此名称调用。namespace名字空间。serviceClass服务类,这是我们前面建的对外服务interface。implementationClass服务实现class。当然如果你需要多个Service,仅仅只要在这里加多一个service节点罢了。够简单的吧 : )

下面我们就来测试一下吧! 启动Tomcat服务。打开浏览器输入http://yourserver:port/bos/services/HelloWorld 。如果没有出错,这时网页中会显示一个完整的XML文件,该XML包括供Client端调用的所有信息。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值