Posted on 2006-05-31 00:05
Computerboy 閱讀(1541)
評論(1) 編輯 收藏 所屬分類:
編程技術
這個里程碑是我在出差期間翻譯的,時間倉促,可能有的沒有翻譯,準備回去再整理了,先發個草稿到博客上吧。有錯誤請告訴我!!!!
原文地址:http://getahead.ltd.uk/dwr/changelog/dwr20m2
DWR2.0版本里程碑2 發布!
We're on a roll ...
里程碑1描述反向Ajax和其它goodies.里程碑2添加注釋,反向Ajax使用Jetty Continuations,在Java 中寫JavaScript 你的效率會更高!
Java 中寫腳本(Write your Javascript in Java)
Javascript puts some people off Ajax; DWR2.0里程碑2有一套新的實驗性的API允許你使用Java和熟悉的語言和IDE寫腳本(JavaScript).
我們擁有DWRUtil庫,首先是服務器端版本:
----
import org.directwebremoting.proxy.dwrutil.DwrUtil;
? DwrUtil util=new DwrUtil(...);
? util.addOptions("selectId",array);
----
上述是Java代碼,但是它修改是在遠程瀏覽器中是可見的,在這種情況下,加入了一系列內容到下拉列表(droo-down list)。
我們也有一個實驗性的服務器端java版本of Script.aculo.us Effects:
----
import org.directwebremoting.proxy.scriptaculous.Effect;
? Effect effect=new Effect(...);
? effect.fade("selectId");
----
整潔的事情是反向AJAX能結合這些服務器端APIS以少數請求改變多數瀏覽器.
----
Collectiong sessions=WebContextFactory.get().getScriptSessionsByPage("/index.html");
DwrUtil util=new DwrUtil(sessions);
util.setValue("message","Hello,World!");
----
這代碼將在主頁上查找所有瀏覽器并更改內容of a div with id="message" 包含問候。
注釋
如果你使用java 5(JDK) ,那么你能利用新的DWR注釋,感謝Maik Schreiber.
在里程碑1支持組合一般類型映射。(to get rid of the need for a <signature> element)
你能沒有對任何DWR.XML的需要(了解)而使用DWR.
新的注釋包括 @Create,@Convert,@RemoteMethod,@RemoteProperty.
了解更多注釋細節請看http://getahead.ltd.uk/dwr/server/annotations
Jetty Continuations
反向的Ajax正在進行的工作是確保由于額外的加載沒有使WebServer得到損害。
第一塊難題來自于Greg Wilkins of Jetty fame.
如果反向的Ajax在Jetty Servlet引擎上能夠打開的話,那么DWR就能夠自動使用Jetty 的 Ajax Continuations在多線程上保存。
我想要把支持擴展到其它的Servlet引擎上,但是,Jetty看起來像是在曲線的前面。
我最近blogged,我們需要一個JSR 為 Continuations to make this easy.
Other Changes
如果有安全限制超時,一些安全的機制會自動的返回一個登錄頁面給用戶!
如果有些事物替換DWR請求,我們添加一個實驗性的特性,允許你采取特殊的方式登錄。
你一般想要重新加載當前頁面,查看完全的登錄。
你能做如下:
----
DWREngine.setTextHtmlHandler(function(){document.location.reload();});
----
里程碑2也確定了許許多多的錯誤,如果你發現有任何錯誤,請反饋給我!