• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    Apache Tomcat 4.0的新特性

    發布: 2008-2-21 14:01 | 作者: Robot | 來源: 網絡 | 查看: 43次 | 進入軟件測試論壇討論

    領測軟件測試網 Tomcat4.0包含三個主要的部分,包括:


        * Catalina - 一個符合Servlet API規范2.3的Servlet Container
        * Jasper - 一個符合JSP規范1.2的JSP編譯器和運行環境
        * Webapps - Tomcat中包含的一些例子和用于測試的web例程,以及相關文檔。

        Tomcat4.0的一個主要目的是支持目前正在處于測試版的Servlet2.3規范和JSP1.2規范的新特性。本文主要介紹Tomcat4.0實現的這些新特性以及這些新特性目前在tomcat中的實現情況。

        Servlet API 規范2.3

        應用程序中的事件:


        你可以在web.xml文件中注冊相應的事件監聽器,當這些事件發生時,在應用程序中可以收到相應的事件通知,這些事件包括:
        - 應用啟動
        - 應用關閉
        - 應用的屬性的增加、刪除、被替換
        - Session創建
        - Session失效、超時
        - Session的屬性的增加、刪除、被替換

        事件監聽器的功能被加入到Catalina,看來效果非常好。在Webapps中的web應用examples中就有兩個監聽器的例子用于通過ServerletContext.log()記錄相應的事件。

        Servlet Fliter


        你能夠在web.xml文件中注冊類似與Catalina核心中Valves功能類似的的Filter。Filter主要具有以下特性:
        - Filter能夠映射成相應的URL或特定的Servlet。
        - Filter能被用于對request,reponse對象進行預處理、或后處理。
        - Filter能封裝request、response對象,比如可以對對象中的內容進行轉換。
        - Filter能夠對訪問請求直接響應,然后返回給客戶端,而不僅僅進行訪問請求的傳送,比如,你可以在應用級進行用戶認證。

        與這些特性相關聯,當servlet傳遞參數給RequestDispatcher時就可以做這種類型的封裝。而在以前,你只能將初始的request對象傳遞給Servlet Container,并且從Servlet Container中得到返回的response對象。Servlet filter的功能目前已經加入到Catalina中,并通過了初步測試。在應用examples中有一個filter用于路徑映射和向調用servlet的映射("/servlet/*"),其中存放了最終傳遞給執行Servlet的request對象屬性。

        安裝擴展庫的依賴關系

        Web應用程序或WEB-INF/lib中的jar文件,現在可以聲明對特定版本外部庫的依賴關系,這些外部庫是由Servlet Container作為共享擴展提供的。在Catalina中目前還沒有完全實現這部分功能。

        國際化支持


        Catalina現在支持從Locale向字符集的映射,在ServletRequest中增加了一個新的方法setCharacterEncoding() ,在這一方面,還需要有個多的測試和功能增強。


        Web應用的類裝載器


        Servlet規范草案中9.6.2節中定義了與Web應用中類裝載器相關的需求和建議。這些需求在Catalina中被遵照執行。

        Servlet 2.3應用程序分發描述符的DTD


        在Catalina中包括一個非正式的用于解析web.xml文件的DTD(catalina/src/conf/web_23.dtd)
        它將被正式發布的DTD所替代。

     

        JSP規范1.2


        JSP 對Include flush="false"的支持
        這個變化通過在標準或定制的標記中嵌套使用<jsp:include>標記,允許利用內含的servlet進行緩存、處理,并產生的輸出。這個變化取決于前述的對RequestDispatcher.include()的功能的增強功能。

        JSP頁面的XML視圖


        JSP1.2的實現要求輸入不僅要符合JSP語法,而且要符合XML語法。目前正在將Jasper的parser進行轉換,使得其能接受任何一種類型的輸入。

        屬性編輯器的利用


        假如一個應用對java類的一個特定屬性注冊了一個屬性編輯器(PropertyEditor),那么這個屬性編輯器的setAsText()方法將用于將文本格式的屬性(比如request對象的一個參數)轉換為該屬性的內部表示。假如沒有定義屬性編輯器,那么就采用前述的缺省屬性編輯器進行轉換。

        定制標記庫驗證頁面的合法性


        在定制標記庫中增加了一個新的編譯階段用于檢查頁面的XML視圖,如果檢測到錯誤,就拋出一個轉換時異常。在這當中,可用于驗證:
        - 從語義上不能被TLD中定義的信息驗證的嵌套定制標記
        - 誤用或濫用JSP中定制標記特性。比如,你可以用一個驗證子禁止JSP使用Java語句塊。

        增強的迭代支持


        增強了的定制tag機制支持在不做內容嵌套的前提下進行迭代的能力。這將優化這類非常常見的例子的性能,比如通過迭代來表示一個表格的處理結果,而不用顯式對表格中每一行進行處理。

        定制tag庫能夠聲明應用監聽器


        一個定制的tag庫能夠利用servlet2.3中的新特性,聲明一個監聽器,用于監聽應用程序相關的事件。

        附加的TLD元素


        在許多簡單的例子中,聲明變量時,采用附加的TLD元素可不用書寫TagExtraInfo類

        在Tag接口中增加resetCustomAttributes()方法


        通過由Servlet Container調用附加的方法,使得在循環調用一個tag的實例前調用該方法

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    TAG: apache Apache Tomcat


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>