在網上查了各種資料,實驗了好多次,總是有些小地方耽誤了,最後終於成功搭建出了xfire,回想起來其實很簡單,但是看別人的筆記,難免會有些地方理解的不到位,所以抽了點時間簡單的記錄了下,自己做的筆記才最易懂,方便下次做的時候查看,不過可能有些忽略掉了的地方~
一、需要下載的工具:
1、xfire(可以在網上搜,也可以去我的資源裡下,本例為1.2.6)
2、tomcat(本例為7.0.27)
3、eclipse
二、操作步驟
1、安裝tomcat,然後啟動eclipse並把tomcat嵌入eclipse
2、建立一個動態web項目
3、將xfire-distribution-1.2.6.zip解壓縮後,把xfire-all-1.2.6.jar和lib目錄下的所有jar包都拷貝到項目的WebContent/WEB-INF/lib目錄下。
4、在WebContent/WEB-INF下建立META-INF/xfire/services.xml,按照固定的格式寫
5、在WebContent/WEB-INF下的web.xml檔案裡加上如下代碼
<!-- *****xfire start***** -->
<servlet>
<servlet-name>XFireServlet</servlet-name>
<servlet-class>
org.codehaus.xfire.transport.http.XFireConfigurableServlet
</servlet-class>
<load-on-startup>0</load-on-startup>
</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>
<!-- *****xfire end***** -->
三、一個超級簡單的執行個體
1、項目的結構圖
2、涉及的類及xml檔案
HelloService
package hao;
public class HelloService {
public String sayHello(String name){
return name+",你好!";
}
}
services.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xfire.codehaus.org/config/1.0">
<service>
<name>HelloService</name>
<serviceClass>hao.HelloService</serviceClass>
</service>
</beans>
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" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" 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>WSProject</display-name>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<!-- *****xfire start***** -->
<servlet>
<servlet-name>XFireServlet</servlet-name>
<servlet-class>
org.codehaus.xfire.transport.http.XFireConfigurableServlet
</servlet-class>
<load-on-startup>0</load-on-startup>
</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>
<!-- *****xfire end***** -->
</web-app>
3、運行項目得到結果,首先啟動tomcat,在瀏覽器輸入:
http://localhost:8888/web/services/,當然8888是tomcat的連接埠號碼,根據實際情況,預設連接埠為8080,本例為8888,結果如下
然後再根據自己的需求進行調用,本次的目的是為了在android裡調用它來訪問sqlserver資料庫,具體實現還在實踐當中,這兒算是成功一半了吧!
附加:在運行項目的時候記得配置server
右擊項目,run as-run on server