程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA編程入門知識 >> Sun向JCP提交Servlet3.0規范—JSR315

Sun向JCP提交Servlet3.0規范—JSR315

編輯:JAVA編程入門知識

  Sun 已經向JCP(Java Community Process)提交了Servlet3.0規范——JSR 315(Java Specification Request)。其高級目標包括可插拔web框架、EoD(ease of development——易於開發)特征、支持異步和Comet、安全、與其他規范結合、以及其它各項改進。它預備包含在Java EE 6中,Java EE 6的最終版大約於2008第4季度發布。預計不出2007年7月2日就會出評論。

  以下是這些目標的具體版本,來自JSR 315提案 :

   以下是引用片段:
  

  • 可插拔的Web框架
    • 幾乎所有基於Java的web框架都建立在servlet之上。現今大多數web框架要麼通過servlet、要麼通過Web.XML插入。利用標注(Annotation)來定義servlet、listener、filter將使之(可插拔)成為可能。程序訪問web.xml和動態改變web應用配置是所期望的特性。該JSR將致力於提供把不同web框架無縫地插入到web應用的能力。
  • EOD
    • 標注——利用標注來作為編程的聲明風格。
    • web應用零配置是EoD努力方向之一。部署描述符將被用來覆蓋配置。
    • 范型(generic)——在API中盡可能利用范型。
    • 使用其它語言增強可能需要改善API可用性的地方。
  • 支持異步和Comet
    • 非阻塞輸入——從客戶端接收數據,即使數據到達緩慢也不會發生阻塞。
    • 非阻塞輸出——發送數據到客戶端,即使客戶端或網絡很慢也不會發生阻塞。
    • 延遲請求處理——Ajax web應用的Comet風格,可以要求一個請求處理被延遲,直到超時或一個事件發生。延遲請求處理對以下情況也很有用:假如遠程的/遲緩的資源必須在為該請求服務之前被獲得;或者假如訪問一個非凡資源,其需要扼殺一些請求以防止太多的並發訪問。
    • 延遲響應關閉——Ajax web應用的Comet風格,可以要求響應保持打開,以答應當異步事件產生時發送額外的數據。
    • 阻塞/非阻塞通知——通知阻塞或非阻塞事件。
    • 頻道概念——訂閱一個頻道,以及從該頻道獲取異步事件的能力。這意味著可以創建、訂閱、退訂,以及應用一些諸如誰能加入、誰不能加入的安全限制。
  • 安全
    • login/Logout能力。
    • 自注冊。
  • 結合
    • 結合/需求,來自REST JST JSR(JSR 311 )。
    • 結合/需求,來自JSF 2.0 JSR(JSR 134 )。
  • 其它
    • 支持更好的歡迎文件(welcome file)。
    • ServletContextListener排序。
    • 容器范圍內定義init參數。
    • 文件上載——過程偵聽——存儲中間或最終文件。
    • 澄清線程安全問題。

  Greg Wilkins,Jetty 的主要開發者和本JSR的支撐成員,反對“支持異步和Comet”之下的一些目標。對於非阻塞輸入和輸出,他認為這一能力應該加入到容器中,而不是曝露給servlet開發者。對於延遲請求處理,他認為掛起/恢復語義會更好些,而且他們還將導致對延遲響應關閉的需求。

  適當的時候現有項目將被用來作為指南。例如當前支持Comet的容器,如Grizzly 、Tomcat 和Jetty,在為Comet定義API時,將被復查(review)。“Comet 是一種編程技術,答應web服務器無需任何客戶端請求而發送數據到客戶端。它答應創建托管在浏覽器中的事件驅動web應用。”針對於可插拔web框架,現存的一些web框架如Shale 、DWR 、Spring Web Flow 和Wiched 也將被分析。


 
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved