目前项目上有用到xfire,所以临时看了些xfire的资料和示例,自己照着写了一个简单示例。

  xfire在2007年后已经停止更新,正式更名为apache cxf,也可以说是xfire2.0。

  xfire最后的版本是xfire1.2.6

  1.新建一个dynamic project

  2.lib中加入xfire依赖的jar,这个可以从xfire-distribution-1.2.6找到

   

      3.配置web.xml

    

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns="http://java.sun.com/xml/ns/javaee" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
    http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
  <display-name>xfireDemo</display-name>
  
  <servlet>
      <servlet-name>xfireServlet</servlet-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>

    4.编写service对象

package com.jerry.ws;
/**
 * 
 * @author Jerry
 *
 * 2014年6月10日 下午11:03:16
 */
public interface HelloService {
    void sayHello(String name);
}
package com.jerry.ws;
/**
 * 
 * @author Jerry
 *
 * 2014年6月11日 上午12:16:21
 */
public class HelloServiceImpl implements HelloService {

    @Override
    public void sayHello(String name) {
        // TODO Auto-generated method stub
        System.out.println("hello, " + name + "! ");
    }

}

      5.在META-INF下先新建一个xfire文件夹,在新建一个services.xml,然后编辑services.xml

    

<?xml version="1.0" encoding="utf-8" ?>
<beans>
  <service xmlns="http://xfire.codehaus.org/config/1.0">
    <name>HelloService</name>
    <namespace>http://ws.jerry.com/services/HelloService</namespace>
    <serviceClass>com.jerry.ws.HelloService</serviceClass>
    <implementationClass>com.jerry.ws.HelloServiceImpl</implementationClass>
  </service>
</beans>

      6.因为xfire会在classPath下去找META-INF/xfire/services.xml,所以Eclipse 发布需要做如下配置

      

      7.最后配置tomcat,启动项目,访问 http://localhost:8080/xfireDemo/services,就可以看到所发布的服务了

      

posted on 2014-06-11 00:23  爱生活的夜  阅读(2817)  评论(0编辑  收藏  举报