1:建立一個xfire web 工程(XFireTest)
2:在工程目錄webroot/web-inf/web.xml配置如下資訊
- <?xml version="1.0" encoding="UTF-8"?>
- <web-app version="2.5"
- xmlns="http://java.sun.com/xml/ns/javaee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
- http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
- <servlet>
- <display-name>XFire Servlet</display-name>
- <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>
- <welcome-file-list>
- <welcome-file>index.jsp</welcome-file>
- </welcome-file-list>
- </web-app>
3:引入xfire lib包
從官方網下載下傳xfire-distribution-1.2.6.zip ,解壓引入lib下和modules下所有包,運作過程中運到一個問題XFireConfigurableServlet出錯,是spring1.2.6.jar包的問題,需引入spring2.0.jar包.
4:建立一個類,和接口
- package com.tw.test;
- public interface HttpServices {
- public String hello(String name);
- }
- package com.tw.test;
- public class HttpServicesImpl implements HttpServices {
- public String hello(String name) {
- if(null == name){
- return "tw_"+name;
- }else{
- return "hello"+name;
- }
- }
- }
5:在src目錄下建立META-INF/xfire/services.xml 目錄及檔案,配置如下
- <?xml version="1.0" encoding="UTF-8"?>
- <beans>
- <service xmlns="http://xfire.codehaus.org/config/1.0">
- <name>HttpServices</name>
- <namespace>http://localhost:8080/HttpServices</namespace>
- <serviceClass>com.tw.test.HttpServices</serviceClass>
- <implementationClass>com.tw.test.HttpServicesImpl</implementationClass>
- </service>
- </beans>