Tomcat5.0.28下AXIS完全安裝手冊

發表于:2007-07-14來源:作者:點擊數: 標簽:
網上有一些AXIS的安裝文檔,不是很詳細,而且,我按網上的資料安裝得不是很成功,老是報錯,可能是因為使用了較新版本的Tomcat,AXIS. 經過多番努力,終于配置成功,把安裝過程和心得和大家分享一下. 一.簡介 什么是 SOA P?SOAP是一個應用程序間的基于XML的通信工具

    網上有一些AXIS的安裝文檔,不是很詳細,而且,我按網上的資料安裝得不是很成功,老是報錯,可能是因為使用了較新版本的Tomcat,AXIS.

經過多番努力,終于配置成功,把安裝過程和心得和大家分享一下.

一.簡介


什么是SOAP?SOAP是一個應用程序間的基于XML的通信工具和規范.SOAP最初由MicroSoft和Userland公司開發,已經演化了好幾個版本,當前的版本SOAP1.1正飛速發展.W3C的XML協議工作組正努力把它發展為一個真正的開發的標準.SOAP1.2草案已經發布,它能澄清1.1版規范的容易混淆的地方.

什么是Axis?Axis總體上是一個SOAP引擎,但又不僅僅是個引擎,它還:1)是一個簡單的獨立的服務器2)是一個可插入到servlet引擎(如Tomcat)中的服務3)可擴展的支持WSDL4)能根據WSDL產生JAVA文件/類5)包括一些例子程序6)包括一個可以監控TCP/IP包的工具

Axis起源于IBM的SOAP4J,是Apache SOAP的第三代產品,相對于以前的版本,它有如下特性:1)快速,它使用了基于事件的SAX解析機制.2)靈活,用戶可以靈活定制擴展.3)穩定,接口將會變動很小.4)基于組件開發.5)支持WSDL1.1

二.準備


1.安裝Tomcat5.0.28,這是當前穩定版本.Tomcat運行在80端口.訪問http://localhost/檢查Tomcat是否安裝成功.
(Tomcat+Apache+Mysql的整合安裝,詳見另外一篇.)
2.下載AXIS:
官方站點:http://xml.apache.org/axis/index.html
下載軟件:axis-bin-1_2_1.tar.gz
3.下載相關包:
a.mail.jar 下載地址:http://java.sun.com/products/javamail
b.activation.jar 下載地址:http://java.sun.com/products/javabeans/glasgow/jaf.html
c.xerces.jar 下載地址:http://xml.apache.org/xerces-j/index.html
d.xmlsec-1.2.1.jar 下載地址:http://xml.apache.org/security/

三.安裝

1.將四個相關包,全部拷到<CATALINA_HOME>;/common/lib目錄(Tomcat安裝目錄下的common/lib)下
2.解壓axis-bin-1_2_1.tar.gz,將壓縮包里的webapps/axis拷到網站根目錄下(如果Tomcat是默認配置,那就是<CATALINA_HOME>;/webapps/ROOT目錄).
3.
修改Tomcat的配置文件server.xml(<CATALINA_HOME>;/conf/server.conf)
在</Host>;前加入:
<Context path="/axis" docBase="C:\Program Files\Apache Software Foundation\Tomcat\webapps\ROOT\axis" debug="0" reloadable="true" >; </Context>;
(docBase里是你的實際axis存放的目錄)
注意,此步至關重要,AXIS的安裝文檔中沒有提到此步,導致很多人安裝不成功.
如果沒有此步,訪問http://localhost/axis時,提示如下錯誤:
Can't find bundle for base name i18n, locale en_US(zh_CN)
表面是上看i18n國際化的問題,但既使i18n.properties,i18n_zh_cn.properties存在,也無法找到.
網上很多朋友安裝到此,無法繼續下去,我也找了很多資料,都沒有解決.后來查看Tomcat的文檔,猜測是Tomcat配置的問題,經測試,終于成功.
可能Tomcat的前期版本,不需此設置.沒有測試過.
另外,也可以將axis/WEB-INF/classes/*,axis/WEB-INF/lib/*的所有文件,拷到<CATALINA_HOME>;/common/lib/這個方法比較麻煩.
注:AXIS客戶端,需要拷貝axis/WEB-INF/lib/*到<CATALINA_HOME>;/common/lib/

四.測試


重新啟動Tomcat.
1.訪問:http://localhost/axis
點擊:Validation - Validate the local installation's configuration測試是否有錯.
2.
寫個小程序:
public class HelloService
{
        public String sayHello(String username)
        {
                return "Hello:"+username;
        }
}
另存為axis目錄下HelloService.jws
再能過WEB訪問:
http://loalhost/axis/HelloService.jws
http://loalhost/axis/HelloService.jws?method=sayHello&parameter=ipaddr


    另外,如果是Apache+Tomcat整合在一塊,以上配置后,還需要更改Apache的配置,在httpd.conf中加入:
JkMount /axis/* ajp13
通過Apache可以訪問axis的Servlet

    Apache Axis是Apache WebService項目中的子項目,其最初起源于IBM的"SOAP4J",應該屬于最早的一批用于構造基于SOAP應用的Framework。

    目前Apache Axis已經發展到了第三代,其核心是一個SOAP處理器,用于開發包括客戶端,服務器端,SOAP Gateway等各種應用。事實上Apache Axis在了1.0版后,其發行版本還包括了完整的J2EE服務器插件, WSDL支持和生成,TCP/IP監視器等組件,從這個意義上來說Apahce Axis已不僅僅是個SOAP框架了,它包含了除了UDDI外對整個Web Service協議棧(Protocol Stack)的支持。

對大多數關心Macromedia產品的人來說,Macromedia是Axis小組的核心成員之一,他們在幾乎所有J2EE服務器端的產品線中包含了Axis,也就是說Macromedia對WebService的支持是通過Apache Axis實現的,這其中包括了JRun, Flex, ColdFusion。即便是Flash Remoting,由于其核心還是SOAP,所以也是使用了Axis的SOAP框架。

    和.NET的WS不同,Axis是一個非常易于擴展的體系結構,其設計的核心思想是建立一個數據處理的管道,通過把handler編織成一條處理鏈從而無限擴展其可能性。打個比方,在輸入部分開發人員既可以編寫基于HTTP Basic Authentication的用戶驗證模塊也可以插入SOAP Auth模塊用于驗證請求,而輸出部分既可以通過XML binding把結果輸出為SOAP XML也可以象Flash Remoting那樣把結果輸出成binary格式。

    同時Axis也提供了所有的處理模塊,使得用戶能在最快的時間把服務器組件發布成WS.總的來說Axis有以下幾個特點:


速度 - Axis 使用 SAX 而不是 DOM 來處理XML請求,所以速度上有很大的改善。
靈活性 - 剛才也提到了,Axis的體系結構是一個全開放式的處理器,所以擴展模塊極為方便。面向組件的發布方式 - 處理鏈上可重復使用組件來完成類似的操作。
Transport 框架 - Axis的核心和底層的transport完全分離,也就是說不管WS的Transport是HTTP, FTP, MAIL, MESSAGE QUEUE,只要插入對應的Transport模塊即可,而不需改動其他部分。
WSDL1.1支持 - 可自動由Java Object生成WSDL

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97