實(shí)驗(yàn)室想把原來做的一些東西打包成web服務(wù)的形式供別人調(diào)用,因此趁此機(jī)會(huì)學(xué)習(xí)了下axis1.4?,F(xiàn)在把學(xué)習(xí)過程中碰到的一些問題記錄下來。
1.axis簡(jiǎn)介:
Axis(Apache eXtensible Interaction System)是一款開源的WebService 運(yùn)行引擎,它是SOAP 協(xié)議的一個(gè)實(shí)現(xiàn),其本身來源于Apache 的另一個(gè)項(xiàng)目Apache SOAP。Axis 分為1.x系列和2 系列,兩個(gè)系列體系結(jié)構(gòu)和使用上有較大的區(qū)別,相對(duì)而言,Axis1.x 更加穩(wěn)定,文檔也比較齊全,因此本文內(nèi)容以Axis 1.x 系列最新版本1.4 為基礎(chǔ)。
2.axis的安裝配置:
可以從官方網(wǎng)頁http://ws.apache.org/axis/index.html下載到1.x系列的最終版1.4,建議大家把axis-bin-1_4.zip 和axis-src-1_4.zip 都下下來。
2.1安裝到本地:
安裝到本地主要是為了應(yīng)用axis自帶的一些小工具。很簡(jiǎn)單把axis-bin-1_4.zip解壓到某個(gè)目錄即可,我電腦里是D:\JavaTools\axis-1_4,這個(gè)目錄就是所謂的axis安裝目錄.
為了這些工具的方便使用,需要設(shè)置些環(huán)境變量:
AXIS_HOME:D:\JavaTools\axis-1_4
AXIS_LIB:%AXIS_HOME%\lib
AXISCLASSPATH:%AXIS_LIB%\axis.jar;%AXIS_LIB%\commons-discovery-0.2.jar;%AXIS_LIB%\commons-logging-1.0.4.jar;%AXIS_LIB%\jaxrpc.jar;%AXIS_LIB%\saaj.jar;%AXIS_LIB%\log4j-1.2.8.jar;%AXIS_LIB%\wsdl4j-1.5.1.jar;
前兩個(gè)我用到了,后面那個(gè)一直沒用到
2.2安裝到Tomcat中:
axis要運(yùn)行必須有web容器,我使用的是Tomcat。很簡(jiǎn)單,
1)在axis安裝目錄中找到webapps文件,打開,然后把里面的axis文件夾及其內(nèi)容復(fù)制到Tomcat的webapps目錄下,在我電腦里即有這么個(gè)目錄D:\JavaTools\Tomcat 6.0\webapps\axis
2)檢驗(yàn)是否安裝成功:首先啟動(dòng)Tomcat,然后在瀏覽器里輸入http://127.0.0.1:8080/axis/,如果看到下面這個(gè)圖則說明在Tomcat下安裝成功了
注意,axis安裝包中少幾個(gè)jar包,需要單獨(dú)下載:
必需組件:
http://java.sun.com/products/javabeans/glasgow/jaf.html
可選組件:
http://java.sun.com/products/javamail/
http://xml.apache.org/security/
分別下載:jaf-1_1-fr.zip,javamail-1_4.zip,xml-security-bin-1_2_1.zip包,然后把jaf-1_1-fr.zip里的Activation.jar,javamail-1_4.zip里的mail.jar,xml-security-bin-1_2_1.zip里的xmlsec-1.2.1.jar,xalan.jar都放到你的axis應(yīng)用的WEB-INF/lib下然后在校驗(yàn)Axis,看到頁面提示全部安裝成功。
2.3安裝到Eclipse
如果你在項(xiàng)目中要用到axis,則你的項(xiàng)目應(yīng)該包含axis的一些包。這里主要是在客戶端編程中要用到。
首先創(chuàng)建一個(gè)WEB項(xiàng)目,名稱隨便, 再把a(bǔ)xis安裝目錄中的lib目錄下的所有jar包都導(dǎo)入該項(xiàng)目,這樣eclipse中的axis就安裝好了,開發(fā)webservice就只要在這個(gè)項(xiàng)目里開發(fā)就行了,如果你在其他項(xiàng)目里開發(fā)的話,只要把jar都導(dǎo)過去就行了,簡(jiǎn)單吧!
安裝就講這么多。?;旧暇蜎]什么問題了。
3.開發(fā)web service
axis中發(fā)布服務(wù)主要有兩種方式
即時(shí)發(fā)布雖然很方便,但限制過大,一般不會(huì)用。最大限制就是不支持帶包的類,這是初學(xué)者容易犯的一個(gè)錯(cuò)。具體就不講了,下面通過講解如何把我們項(xiàng)目的一個(gè)算法發(fā)布成web service來詳細(xì)講解定制發(fā)布。
聯(lián)系客服