`
liusp_eye
  • 浏览: 9741 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

使用XFire+Spring构建Web Service

阅读更多
   个人博客:http://www.hpgy.net/blog/12345679/9/262_1.html

   最近在产品开发中用到了XFire来实现WebService,现把项目中的使用体会和经验总结如下:

1. 相关资源

    xFire相关jar包:

     核心包:xfire-all-1.2.6.jar、xfire-jsr181-api-1.0-M1.jar;依赖包:XmlSchema-1.1.jar 、xmlsec-1.3.0.jar、xml-apis-1.0.b2.jar、wsdl4j-1.6.1.jar、wss4j-1.5.1.jar、wstx-asl-3.2.0.jar、stax-api-1.0.1.jar、stax-utils-20040917.jar、jdom-1.0.jar、jaxen-1.1-beta-9.jar、commons-httpclient-3.0.jar。

    xFire的jar包和原工程的jar包容易发生冲突,是比较烦人的一件事;大家在使用中要特别注意。

2. 配置Web.xml

   <!-- xfire 配置 -->
   <servlet>  
        <servlet-name>XFireServlet</servlet-name>  
        <servlet-class> org.codehaus.xfire.spring.XFireSpringServlet </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>

3. 编写Web Service实现类

     这个和普通的Service类实现一样,一个接口,一个实现类,这里我们定义了一个简单数学计算求和的Service,代码如下:

     Service接口类:MathService.java

             package com.kuaff.xfire.samples;

             public interface MathService {

                     public long add(int p1, int p2);
            }


     Service实现类:MathServiceImpl.java

         package com.kuaff.xfire.samples;

        public class MathServiceImpl implements MathService { 

              public long add(int p1, int p2) {
                    return p1 + p2;
             }
         }


4. 配置Service到Web应用中

    编写Web Service的实现类后,接着我们把它集成到Spring中并向外暴露服务。首先,需要在spring配置文件中引入xfire相关配置文件,

引入配置如下:    

     <import resource="classpath:org/codehaus/xfire/spring/xfire.xml" />  

    然后配置Web Service业务逻辑的实现类,这个和一般的bean配置一样,如下:

     <bean id="mathBean" class="com.kuaff.xfire.samples.MathServiceImpl"  autowire="byName"/>

    最后一步把mathBean配置成Web Service,向外暴露该服务的接口以便访问,配置如下:

   <bean id="mathWebService" class="org.codehaus.xfire.spring.remoting.XFireExporter"> <!-- WebService的名字 -->  
        <property name="xfire" ref="xfire" />  
        <property name="serviceBean" ref="mathBean" /> <!-- WebService的实现类bean -->  
        <property name="serviceClass" value="com.kuaff.xfire.samples.MathService" />  
    </bean>

5. 客户端访问

       package com.kuaff.xfire.samples.client;         

       import org.codehaus.xfire.client.Client;

       public class TestWebServiceClient {
                 public static void main(String[] args)  {              

         int  p1 = 3;
         int   p2 = 5;
        
        Client client;
        try {
            client = new Client(new URL("http://localhost:8080/test/services/mathWebService?wsdl"));
            Object[] results = client.invoke("add", new Object[] {p1,p2});
            System.out.println((String) results[0]);        
            System.out.println(p1);
        } catch (Exception e) {
            e.printStackTrace();
        }

}

     }





分享到:
评论

相关推荐

    使用XFire+Spring构建Web Service步骤以及源代码.rar

    总之,使用XFire和Spring构建Web服务允许你利用Spring的灵活性和XFire的效率来创建高性能的服务。这种方式使得服务的开发、管理和维护变得更加简单,尤其适合大型企业级应用。通过实践这个教程,你不仅可以学习到Web...

    使用XFire+Spring构建Web Service步骤

    总结,使用XFire和Spring构建Web Service,可以利用Spring的IoC和AOP特性简化服务的创建和管理,同时XFire提供了高效且灵活的Web Service实现。通过以上步骤,开发者可以快速地搭建自己的Web Service,并与其他系统...

    使用XFire+Spring构建Web Service(二).doc

    总结来说,这个例子不仅展示了如何使用XFire+Spring构建Web服务,还涵盖了处理复杂数据类型、对象序列化、服务发布、异常处理等多个关键点。通过这样的实践,开发者可以更好地理解Web服务的实现原理,并能够灵活地...

    使用XFire+Spring构建Web+Service

    这些特性使得XFire在Web Service开发领域备受青睐,尤其是结合Spring框架使用时,可以实现无缝集成,让Web Service的构建和管理变得更加便捷。 以XFire和Spring集成的HelloWorld示例为例,我们可以看到一个基于J2EE...

    XFire+Spring发布Web Service(一)

    在本教程中,我们将深入探讨如何使用XFire和Spring框架来发布Web服务。XFire是Apache CXF项目的一部分,它是一个强大的Java Web服务框架,而Spring则是Java开发中的一个核心框架,提供了依赖注入、AOP(面向切面编程...

    xfire+spring开发webservice

    Spring框架是Java企业级应用开发的首选工具,而XFire则是一个早期的、基于Apache CXF的用于构建和消费Web服务的库。本篇文章将深入探讨如何使用XFire与Spring框架一起开发Web服务。 首先,我们需要理解XFire的基本...

    xfire+spring+webservice例子

    2. `使用XFire+Spring构建Web Service(一)——helloWorld篇 - 阿蜜果 - BlogJava.mht`:这是一个关于Web服务创建的教程文档,可能详细介绍了如何使用XFire和Spring创建一个简单的"Hello World"服务。 3. `....

    使用XFire+Spring构建WebService

    总之,使用XFire和Spring构建WebService是一种强大的组合,它允许开发者利用Spring的强大功能和XFire的易用性,快速、高效地开发和部署Web服务。理解并掌握这一技术将对提升开发者在Web服务领域的专业技能大有裨益。

    xfire+spring+hibernate的一种整合方式

    6. **适用场景**:这种整合方式适用于需要构建Web服务并依赖于数据库操作的Java应用,特别是那些希望以面向对象的方式编写业务逻辑,同时需要灵活发布和调用Web服务的项目。 7. **注意事项**:尽管这种整合方式在...

Global site tag (gtag.js) - Google Analytics