Lotus教程、Java教程、Java虚拟机、Java软件综合开发社区

Lotus、Domino、Java、C#、Web、数据库综合开发教程、资料社区

利用xFire发布WebService,XFire令WebService如此简单



Published by admin on 08月 24, 2010

运行环境:JBOXX 4.04 、 Tomcat <st1:chsdate w:st=”on” isrocdate=”False” islunardate=”False” day=”30″ month=”12″ year=”1899″>5.3.9</st1:chsdate>

开发工具:Eclipse3.1 + MyEclipse 4.0

1.       利用xFire发布WebService<o:p></o:p>

对于一般的接口方法,即方法的返回类型或参数不是ListMap中存放对象的方法,则只需要两步简单的配置即可。

一、配置web.xml

添加一个servlet

xml 代码

  1. <servlet>  
  2.         <servlet-name>webservice</servlet-name>  
  3.         <servlet-class>org.codehaus.xfire.transport.http.XFireConfigurableServlet</servlet-class>  
  4.     </servlet>  
  5.   
  6.     <servlet-mapping>  
  7.         <servlet-name>webservice</servlet-name>  
  8.         <url-pattern>/servlet/XFireServlet/*</url-pattern>  
  9.     </servlet-mapping>  
  10.     <servlet-mapping>  
  11.         <servlet-name>webservice</servlet-name>  
  12.         <url-pattern>/services/*</url-pattern>  
  13. </servlet-mapping>  

    一、建立services.xml

      在源代码包src(也可能是其它的名称)下建立META-INF/xfire文件夹,并在下面建立services.xml文件。

    xml 代码

    1. <!– START SNIPPET: services –>  
    2. <beans  xmlns=“http://xfire.codehaus.org/config/1.0″>  
    3.   <service >  
    4.     <name>helloWorld</name>  
    5.     <namespace>http://6.1.8.16:8080/xfireWebService/services/helloWorld</namespace>  
    6.     <serviceClass>com.excellence.webservice.test.helloWorld</serviceClass>  
    7.     <implementationClass>com.excellence.webservice.test.HelloWorldImpl</implementationClass>  
    8.   </service>  
    9. </beans>  
    10. <!– END SNIPPET: services –>  

      一 name 元素:表示该webService的名称<o:p></o:p>

      二 namespace 元素:表示该webService的命名空间<o:p></o:p>

      三 serviceClass 元素:表示该webService的接口<o:p></o:p>

      四 implementationClass 元素:表示该webService的实现类<o:p></o:p>

        <o:p></o:p>

      对!就是这么简单,就可以啦。

        <o:p></o:p>

      如果返回类型是ListMap,并且里面存放的是自定义类的话,则需要增加一个对于服务接口的配置文件。该文件的命名规则是 接口文件名.aegis.xml。例如接口是HelloWorld.java的话,则此配置文件命名为HelloWorld.aegis.xml<o:p></o:p>

      xml 代码

      1. <?xml version=“1.0″ encoding=“UTF-8″?>  
      2. <mappings>  
      3.   <mapping >  
      4.     <method name=“getUsers”>  
      5.       <return-type componentType=“com.excellence.webservice.test.User”/>  
      6.     </method>  
      7.   </mapping>  
      8. </mappings>  

        getUsers方法返回类型是List,里面装的User对象。对于这种类型的方法,在配置文件中描述了它的返回值类型。<o:p></o:p>

        如果返回的类型是Map的话,做法和List一样。但定义的类型,是Map中的Value部分,并且这样的话,MapValue所存放的对象就必须全部是同一种类啦。<o:p></o:p>

上一篇文章:« java调用java web service

下一篇文章:关于Hessian协议 »

【版权说明】:本网页上有部分内容来源于网上收集,但不能保证资料的完整性和准确性,仅提供参考和学习。如有侵权请立即通知我们,我们将立即删除,谢谢合作!

Add A Comment