<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Ajax 之DWR發(fā)布說明(試翻譯)

    Posted on 2006-05-14 02:32 Computerboy 閱讀(3138) 評論(3)  編輯  收藏 所屬分類: 編程技術(shù)

    說明:這個(gè)發(fā)布說明是我試翻譯的,由于水平有限,錯(cuò)誤再所難免!
    原文地址:http://getahead.ltd.uk/dwr/changelog/dwr20m1
    DWR現(xiàn)在已經(jīng)發(fā)布了2.0的milestone 2 了。我現(xiàn)在翻譯的是milestone 1
    由于我要出差,所以這個(gè)翻譯是一個(gè)草稿
    歡迎朋友們提出指正
    我的MSN:zhang_2958@hotmail.com




    DWR 發(fā)布說明

    DWR 2.0版本 是1的里程碑


    這是我們在新特性方面的最大發(fā)布!
    反向的AJAX
    最大的特性是我們成為反向的Ajax。DWR1.x允許你用javascript異步的訪問java代碼。
    DWR2.0在這上允許你建立異步j(luò)ava訪問javascript代碼。
    反向的Ajax使你編寫應(yīng)用程序更容易得多。

    ?It can use polling or Comet(long-lived HTTP)queries.
    我們的‘聊天室’例子包含這樣一段java代碼:

    ----

    //Get the current page --得到當(dāng)前的頁

    WebContext wctx=WebContextFactory.get();
    String currentPage=wctx.getCurrentPage();

    // 'messages' is a List of recent messages for a browser to display
    // Java objects converted to Javascript hava a declarating and a declared

    ///variable name.
    OutboundVariable ov=wctx.toJavascript(messages);
    //Loop over all the users on the current page

    for(ScriptSession otherSession:wctx.getScriptSessionsByPage(currentPage)){
    ???? otherSession.addScript(ov.getInitCode());
    ???? otherSession.addScript("receiveMessages("+ov.getAssignCode()+");");
    ?? //receiveMessages is a Javascript function that displays the current list of?
    ???? ///messages
    ? }

    ----

    在本質(zhì)上我們發(fā)送一些javascript循環(huán)所有用戶在當(dāng)前頁上更新并顯示他們。
    javascript更簡單。你可以啟用輪流(輪詢)檢測這種查詢方式。

    ----

    DWREngine.setPolling(true);

    ----

    聊天室例子(在WAR包里下載)包括javascript源碼 到 receiveMessages() 是使用

    DWRUtil的4路線路(線程)將信息顯示到屏幕上。 ????
    其它這技術(shù)的用法包括酒吧,游戲在線,售票和任何的系統(tǒng)在何處服務(wù)器狀態(tài)變化,
    我們需要把更新發(fā)布到瀏覽者或者瀏覽器上。


    跨領(lǐng)域 Ajax:<script> 標(biāo)簽(tag)操作   
    如果你需要訪問不同的領(lǐng)域服務(wù)器 我們的遙遠(yuǎn)(remoting)計(jì)劃已成為可能。
    從DWR2.0你可以操作<script>標(biāo)簽(tags)增加在XMLHttpRequest 或 iframes.
    對于使用你需要做如下:

    ----
    DRWEngine.setMethod(DWREngine.ScriptTag);
    ----

    <signatures>(簽名)元素(Element)
    DWR1.0有時(shí)需要一個(gè)<signatures>元素(Element)幫你它得到一個(gè)類型轉(zhuǎn)換。
    如果你用DWR2.0同JDK5 此時(shí)一般的類型你就不要使用更多的<signatures>
    DWR將自動(dòng)調(diào)用類型轉(zhuǎn)換。


    DWRUtil 更新
    我們已更新DWRUtils.有一種新的DWRUtil.cloneNode(elementID)方法
    你可以重復(fù)使用HTML片段作為模板。
    例如:

    ----
    // Loop over all the beans
    for(var i=0;i<beanArray.length;i++){
    ?? //Fill in the blanks in the template. You will have several lines like this.
    ?? DWRUtil.setValue("someid",beanArray[i].property);
    ?? //Clone the node so we don't overwrite it next time
    ?? DWRUtil.cloneNode("template");
    ? }
    ?//Finally hide the template
    ? $("template").style.display="none";

    ----

    我們也嘗試著寫一些的取值的的更新。如果其值為假的話,將返回false(假).
    這有可能破壞反向的兼容性。
    它是輕微非明顯依賴你的觀點(diǎn),我們需要關(guān)于這樣的反饋。

    新的屬性作用域(Scope)--腳本(Script)
    有一個(gè)新的作用域。
    Servlet與JSP開發(fā)者熟悉設(shè)置屬性在一次請求,頁面,會(huì)話,或者應(yīng)用水平。
    DWR2.0允許你使用"script"(腳本)作用域。
    腳本作用域在單一頁面內(nèi),Ajax應(yīng)用能持續(xù)使用變量。


    腳本作用域其long-lived 有一點(diǎn)像會(huì)話作用域,然而它不要cookies(甜點(diǎn)).腳本作用域

    屬性在單一頁面內(nèi),任何Ajax操作都是可用的。
    創(chuàng)建dwr.xml它是可用的。

    ----
    <create creator="new" javascript="Test" scope="script">
    ?? <param name="class" value="com.example.Test"/>
    </create>

    ----

    腳本作用域也同樣可用于 programatically:

    ----
    WebContextFactory.get().getScriptSession().setAttribute("key",value);
    ----

    例子(Example)

    開始下載DWR2.0 壓縮文件時(shí)會(huì)比以前有一些大因?yàn)槲覀儼ㄒ恍├印?br />我們從事簡單的struts 和 Spring 整理演示。


    Refactoring(重用)這個(gè)詞我叫不準(zhǔn)。是應(yīng)該是重載的呢還是重構(gòu)。大家可以告訴我!

     在開發(fā)者眼中,重用是一個(gè)特性,因?yàn)榇a整潔。
    但是它也是導(dǎo)致用戶向后兼容性問題的原因。
    我們?yōu)镈WR2.0做了一些重用。但是這里是用戶剔除它:
    我們使用 org.directwebremoting.* 包 代替模糊的uk.ltd.getahead.dwr.*,
    由于兼容性差,我們已經(jīng)拋棄存根(stubs).
    如果我們有所遺漏,請告訴我們。我們也試圖使DWR成為可嵌入的。

    同時(shí),如果現(xiàn)在創(chuàng)建像SOAP或者JSON-RPC一樣的預(yù)備的協(xié)議應(yīng)該是可能的!


    呼叫集合數(shù)據(jù)(Call Meta-data)
    你能像這樣使用DWR傳遞請求屬性呼叫集合數(shù)據(jù):

    ----
    Remote.getData(42,{
    ?? Callback:function(str){alert(str);},
    ?? customKey:"Fred",
    });

    ----
    java 在HttpSevletRequest 中額外的集合數(shù)據(jù)是可用的。如下代碼將返回字符串"Fred":

    ----
    WebContextFactory.get().getHttpServletRequest().getAttribute("customKey");

    ----

    其它事項(xiàng)

    雖然我們已經(jīng)刪除了deprecated.js,但是有人竟然還能夠注意到,對此我十分懷疑。在

    DWR9.0版本出現(xiàn)時(shí),它已經(jīng)不能滿足需求了。


    安全和穩(wěn)定

    我們十分慎重的對待安全。DWR1.X 到迄今為止是十分安全的,但是,那不意味著我們停止

    在我們的榮譽(yù)上。
    DWR2.0介紹許多新的代碼。反向的AJAX和腳本為基礎(chǔ)的會(huì)話管理是疏忽(slip up)的地方

    此外,里程碑1,反向的ajax將在你的webserver 上創(chuàng)建一些較多的加載,比老版本穩(wěn)定。
    我們已得到2個(gè)答案--設(shè)計(jì)允許服務(wù)器加載監(jiān)控和動(dòng)態(tài)back-off。


    更令人激動(dòng)的是,我們正與Mortbay一起努力,使DRW能夠運(yùn)用Jetty6的持續(xù)性,如果可行的話,可以滿足長期HTTP的請求而不冒資源匱乏風(fēng)險(xiǎn)。


    因此,在這之前,請不要使用DWR2.0在開發(fā)系統(tǒng),直到我們有更多的測試和檢查。


    未來版本

    這是一個(gè)令人興奮的第一個(gè)里程碑,我們將在未來數(shù)周內(nèi)推出.
    我們將得到更多東西!


    下載
    你可以下載DWR2.0 M1
    下載地址:
    http://getahead.ltd.uk/dwr/download

    ?

    Feedback

    # re: Ajax 之DWR發(fā)布說明  回復(fù)  更多評論   

    2006-05-14 11:01 by netfishx
    也忒不通順了把

    # re: Ajax 之DWR發(fā)布說明(試翻譯)  回復(fù)  更多評論   

    2006-05-14 15:55 by 綠色使者、綠色心情
    應(yīng)該是代碼重構(gòu),還有排版和代碼也應(yīng)該整理一下的

    # re: Ajax 之DWR發(fā)布說明(試翻譯)  回復(fù)  更多評論   

    2007-06-21 15:55 by ss
    ee

    posts - 40, comments - 39, trackbacks - 0, articles - 0

    Copyright © Computerboy

    主站蜘蛛池模板: 222www免费视频| 不卡视频免费在线观看| 成人毛片免费在线观看| a级男女仿爱免费视频| 亚洲av无码无线在线观看| 亚洲日本韩国在线| 免费91麻豆精品国产自产在线观看| 亚洲国产精品国自产拍电影| 色播精品免费小视频| 成人黄网站片免费视频| 亚洲国产超清无码专区| 婷婷亚洲天堂影院| 无码日韩精品一区二区三区免费| 国产综合成人亚洲区| 亚洲精品无码久久一线| 希望影院高清免费观看视频| 中文字幕免费不卡二区| 韩国免费A级毛片久久| 免费人成又黄又爽的视频在线电影| 亚洲熟妇av午夜无码不卡| 亚洲国产精品无码成人片久久| 亚洲第一区在线观看| 在线精品一卡乱码免费| 久久精品人成免费| 一级黄色免费网站| 污网站免费在线观看| 黄色一级免费网站| 亚洲色图校园春色| 97久久精品亚洲中文字幕无码| 亚洲成人动漫在线| 亚洲一区二区成人| 久久久久亚洲AV无码永不| 亚洲精品亚洲人成在线麻豆| 亚洲成a人不卡在线观看| 亚洲精品白色在线发布| 亚洲成av人片在线看片| 亚洲另类视频在线观看| 麻豆狠色伊人亚洲综合网站| 亚洲乱色熟女一区二区三区丝袜| 日本特黄特色免费大片| 日本中文一区二区三区亚洲|