欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
一個(gè)用于J2EE應用程序的Backbase Ajax前端
一個(gè)用于J2EE應用程序的Backbase Ajax前端

  動(dòng)態(tài)HTML技術(shù)已經(jīng)出現了多年。最近,Google的最新Web應用程序GMail、Google Suggests和Google Maps,在前端頁(yè)面中重新引入了基于標準的DHTML開(kāi)發(fā)模型。Google證明了,DHTML開(kāi)發(fā)模型能夠讓開(kāi)發(fā)人員創(chuàng )建具有可視化吸引力和高度交互式的Rich Internet Application(豐富網(wǎng)絡(luò )應用程序,RIA)。

  Adaptive Path公司的Jesse James Garrett為這個(gè)基于標準的RIA開(kāi)發(fā)模型創(chuàng )造了術(shù)語(yǔ)Ajax (Asynchronous JavaScript + XML)。與傳統的基于頁(yè)面的Web應用程序模型相比,Ajax有3點(diǎn)不同之處:

  • 有一個(gè)客戶(hù)端引擎擔任用戶(hù)界面(UI)和服務(wù)器之間的中介。
  • 用戶(hù)行為由客戶(hù)端引擎處理,而不是生成發(fā)往服務(wù)器的頁(yè)面請求。
  • XML數據在客戶(hù)端引擎和服務(wù)器之間傳輸。

  換言之,Ajax解決方案包括一個(gè)客戶(hù)端引擎,它用于呈現用戶(hù)界面,并使用XML格式與服務(wù)器通信。這個(gè)引擎由很多JavaScript函數組成,位于Web瀏覽器中,它不需要插件,也不需要用戶(hù)安裝。

  基于A(yíng)jax的RIA正在迅速成為Web應用程序前端的基準,因為它可以同時(shí)提供二者的優(yōu)點(diǎn):豐富性和可達性。Ajax應用程序和桌面應用程序一樣豐富,響應高度靈敏,并且可以在一個(gè)頁(yè)面上提供所有數據,無(wú)需刷新頁(yè)面。它們還擁有基于標準的瀏覽器應用程序的可達性特點(diǎn),這類(lèi)應用程序可以在不具備瀏覽器插件或客戶(hù)端applet的情況下進(jìn)行部署。

  Backbase所提供的Ajax軟件具有以下特點(diǎn):基于標準、功能全面且易于使用。Backbase Presentation Client (BPC)基于A(yíng)jax技術(shù),它使用稱(chēng)為Backbase XML (BXML)的附加標簽擴展了DHTML。Backbase XML Server Edition for J2EE (BXS)包含了一些服務(wù)器端的組件,利用這些組件,J2EE開(kāi)發(fā)人員可以快速開(kāi)發(fā)J2EE應用程序的Ajax前端。

  在本文中,我使用Backbase為Java Pet Store開(kāi)發(fā)了一個(gè)基于A(yíng)jax的前端。該案例分析說(shuō)明了如何使用Backbase技術(shù)作為J2EE應用程序的Ajax表示層。您可以查看文中所描述的應用程序的在線(xiàn)演示,網(wǎng)址是http://www.backbase.com/xmlserver。

Backbase Ajax表示層

  Web開(kāi)發(fā)人員應該能夠輕松創(chuàng )建具有以下特點(diǎn)的Rich Internet Application (RIA):完全基于HTML標準(W3C),不需要最終用戶(hù)安裝插件,速度超快,能夠在所有瀏覽器上進(jìn)行操作,并與J2EE運行時(shí)和開(kāi)發(fā)環(huán)境完全集成。RIA利用客戶(hù)端(Web瀏覽器)資源創(chuàng )建和管理用戶(hù)界面,從而為最終用戶(hù)提供一個(gè)響應靈敏而且具有應用程序風(fēng)格的用戶(hù)界面。

  這種方法最近被稱(chēng)為Ajax。Ajax這個(gè)術(shù)語(yǔ)的靈感來(lái)源于Gmail、Google Maps和Google Suggests這類(lèi)應用程序,它把現有的瀏覽器技術(shù)提高到了一個(gè)新的水平上。RIA從根本上改進(jìn)了在線(xiàn)應用程序的可用性和有效性。Ajax RIA只使用標準的瀏覽器技術(shù)(如JavaScript、XHTML和XMLHttpRequest對象)就做到了這一點(diǎn)。通過(guò)使用XMLHttpRequest,在將數據異步加載到界面中時(shí)就無(wú)需刷新頁(yè)面。

  Backbase在J2EE架構中提供一個(gè)Ajax表示層,它結合了目前的J2EE服務(wù)器和先進(jìn)的富客戶(hù)端技術(shù)的優(yōu)點(diǎn)。Backbase表示層控制了富用戶(hù)界面的每個(gè)方面:與最終用戶(hù)的交互模型,與后端系統的集成,以及整個(gè)客戶(hù)端-服務(wù)器通信。Backbase直接提供了用于聚合來(lái)自任意位置的XML的下一個(gè)范型,將數據綁定到先進(jìn)的富用戶(hù)界面控件,并在一個(gè)統一的富用戶(hù)界面中交付組合應用程序。

  Backbase表示層由一個(gè)客戶(hù)機和一個(gè)服務(wù)器組成。Backbase Presentation Client (BPC)是一個(gè)基于A(yíng)jax的GUI引擎,它允許開(kāi)發(fā)人員以聲明性的方式快速構建RIA。Backbase XML(BXML)是對XHTML的擴展。它為開(kāi)發(fā)人員提供了交付富前端功能的附加標簽(B tag)。Backbase XML Server (BXS)提供一種XML流水線(xiàn)架構,利用它可以從Web服務(wù)、數據庫或Java對象獲取數據,可以聚合和轉換這些數據,并將其綁定到BPC中的UI元素。BPC和BXS相結合,可以在Web瀏覽器和應用服務(wù)器之間搭建一座功能強大的橋梁,并提供一個(gè)分布在客戶(hù)端和服務(wù)器上的完整的富Internet表示層。

  圖1說(shuō)明了在邏輯和物理應用程序架構中,Backbase所處的位置。應用程序由一個(gè)J2EE后端和一個(gè)基于A(yíng)jax的RIA前端組成。從邏輯上說(shuō),Backbase提供了表示層,而J2EE提供了業(yè)務(wù)邏輯和數據層。從物理上說(shuō),表示層分布在客戶(hù)端和服務(wù)器上。在客戶(hù)端上,Backbase使用BPC擴展了瀏覽器。在服務(wù)器上,Backbase使用BXS擴展了應用服務(wù)器。

圖1. Backbase富Internet表示層

Pet Store案例分析

  我們將使用Java Pet Store作為案例來(lái)分析如何為J2EE應用程序添加Backbase RIA前端。Java Pet Store Demo是Sun Microsystems提供的一個(gè)示例應用程序,其目的是為了演示如何使用Java 2 Platform, Enterprise Edition(J2EE)構建Web應用程序(詳情請參見(jiàn)http://java.sun.com/developer/releases/petstore)。

  Java Pet Store是業(yè)內一個(gè)著(zhù)名的參考應用程序(pet store還有.NET和Flash版本)。由于以下兩個(gè)原因,它成為為J2EE應用程序添加基于A(yíng)jax的RIA前端的完美案例:

  • Java Pet Store是一個(gè)完整的Web應用程序。

    Sun設計Pet Store的目的是演示所有常見(jiàn)的Web應用程序功能。通過(guò)使用Pet Store作為案例,我可以說(shuō)明為J2EE應用程序添加RIA層的所有方面。

    作為一個(gè)典型的在線(xiàn)商店,它包含以下功能:

    • 瀏覽產(chǎn)品類(lèi)別。
    • 在購物車(chē)中添加和刪除物品。
    • 填寫(xiě)訂單表單。
    • 提交訂單。
  • Java Pet Store有一個(gè)傳統的HTML前端。

    使用RIA前端的目的是提供更簡(jiǎn)單和響應更靈敏的GUI,以及通常更為豐富的Web用戶(hù)體驗。我將說(shuō)明,如何通過(guò)Backbase RIA技術(shù)極大地改進(jìn)應用程序的前端,同時(shí)無(wú)需對后端和總體系統需求做任何修改。

    Pet Store的RIA前端將通過(guò)以下方式改善可用性:

  • 把前端變?yōu)橐粋€(gè)單頁(yè)面的界面(SPI)。
  • 提供更先進(jìn)的UI控件(如模態(tài)彈出式菜單)。
  • 使用可視化效果(例如,把寵物放入購物車(chē))。
  • 更加有效地利用電腦屏幕的操作區域。

RIA Pet Store前端

  在這一節中,我將討論經(jīng)過(guò)改進(jìn)的新Pet Store RIA前端。

  下面的兩個(gè)屏幕快照演示了前端的改進(jìn)。要獲得對Backbase RIA前端更直觀(guān)的感受,請訪(fǎng)問(wèn)http://www.backbase.com/xmlserver上的在線(xiàn)演示,或者到http://www.backbase.com/download下載Backbase社區版本。

下面兩個(gè)圖對兩個(gè)前端進(jìn)行了可視化的比較。圖2顯示的是原來(lái)靜態(tài)的多頁(yè)面HTML前端。圖3顯示的是新的Backbase SPI前端:

圖2. 原始HTML前端

圖3. 新Backbase前端

  Backbase為創(chuàng )建豐富的單頁(yè)面Web界面提供了許多可能性。下面列出了一些Pet Store所使用的例子。

  • 選項卡式的單頁(yè)面瀏覽

    在Web界面上,不同的動(dòng)物種類(lèi)(狗、貓等等)被表示為不同的選項卡。點(diǎn)擊一個(gè)選項卡就會(huì )打開(kāi)相應的類(lèi)別,顯示可供出售的寵物。

    在Backbase SPI中,無(wú)需刷新頁(yè)面就可以打開(kāi)選項卡。BPC只從服務(wù)器請求所需的數據,然后更新客戶(hù)端的視圖。SPI機制可以極大地縮短響應時(shí)間,讓客戶(hù)隨心所欲地在類(lèi)別之間來(lái)回穿梭。

  • 活動(dòng)的多功能界面

    界面有三個(gè)主要功能——類(lèi)別瀏覽、購物車(chē)和頁(yè)面引導歷史記錄,它們在界面上都是一直可見(jiàn)的。因此,購物者總是能夠查看購物車(chē)的當前內容或最近看過(guò)的寵物的記錄。

    這些功能是高度同步的:瀏覽一個(gè)寵物時(shí),歷史記錄將自動(dòng)更新為在記錄中顯示該寵物。定購一個(gè)寵物時(shí),它將被添加到購物車(chē)中。上述一切都發(fā)生在客戶(hù)端的一個(gè)頁(yè)面上(例如,無(wú)需重新加載頁(yè)面就可以更新界面的各個(gè)部分)。

  • 界面變化的流暢可視化效果

    進(jìn)行瀏覽時(shí),客戶(hù)將會(huì )看到不斷變化的界面視圖。例如,他可以按照價(jià)格和名稱(chēng)對寵物進(jìn)行排序。界面需要根據新的排列順序顯示更新以后的寵物清單。

    在Backbase RIA前端中,以前的視圖被使用可視化效果的新視圖所代替,新視圖向最終用戶(hù)顯示什么正在改變。圖4說(shuō)明了如何通過(guò)流暢的定位效果,把按名稱(chēng)排列的順序轉變?yōu)榘磧r(jià)格排列的順序:

    圖4.類(lèi)別視圖的排列順序轉換

  • 用于提高轉換速度的信息欄驗證

  為了執行購買(mǎi),購買(mǎi)者必須在一份表單中填入個(gè)人詳細信息。Backbase極大地簡(jiǎn)化了這個(gè)購買(mǎi)過(guò)程,通過(guò)客戶(hù)端的信息欄驗證提供即時(shí)的反饋,并在提供所有數據的過(guò)程中提供逐步的指南和概述。

  圖5顯示了在填寫(xiě)表單的第一個(gè)步驟中,對于e-mail地址信息欄的驗證。當購買(mǎi)者填寫(xiě)下一欄時(shí),就會(huì )提供即時(shí)的反饋。

圖5. 信息欄驗證—e-mail欄

Backbase RIA Pet Store的架構

  增強Pet Store(或其他任何Web應用程序)的前端時(shí),我們將繼續依賴(lài)于以下兩條架構基本原則:

  • 最終用戶(hù)仍然使用標準的Web瀏覽器訪(fǎng)問(wèn)Pet Store,無(wú)需添加任何插件。
  • 由J2EE業(yè)務(wù)邏輯和數據組成的整個(gè)后端保持不變。

  現有的后端在開(kāi)發(fā)期間是完全孤立的,而且不會(huì )改變,這個(gè)事實(shí)對于架構師和IT管理人員十分有利。通過(guò)一個(gè)規整的、模塊化的架構,他們將能夠控制風(fēng)險和成本,同時(shí)顯著(zhù)提高Web應用程序的用戶(hù)友好性。

  Backbase的富表示層技術(shù)由兩個(gè)模塊組成,它們將被加入到架構中。在客戶(hù)端,BPC管理著(zhù)SPI,并通過(guò)異步響應事件來(lái)處理與最終用戶(hù)之間的交互。在服務(wù)器端,Backbase XML Server這個(gè)靈活的XML管道可以連接到任意服務(wù)器端的數據源,包括Web服務(wù)、文件、數據庫或本地Java對象。圖6說(shuō)明了BPC和BXS如何共同為RIA提供一個(gè)聲明式的、基于XML的端到端表示層。

圖6. 聲明式的端到端表示層

Backbase表示客戶(hù)端

  BPC是一個(gè)基于A(yíng)jax的GUI引擎,它運行在標準的Web瀏覽器中。運行時(shí),BPC被加載到瀏覽器中,然后它會(huì )接收BXML代碼,構造對應的B樹(shù),并不斷地把這種表示轉換為瀏覽器所呈現的DOM樹(shù)。圖7說(shuō)明了運行時(shí)轉換過(guò)程。

圖7. BPC運行時(shí)

Backbase XML

  Backbase XML (BXML)是XHTML的擴展。開(kāi)發(fā)人員通過(guò)創(chuàng )建BXML應用程序來(lái)開(kāi)發(fā)富前端,包括BXML標簽、標準的XHTML和CSS。BXML是一種聲明性語(yǔ)言,它包含了XHTML中所沒(méi)有的標簽(B標簽)

  BXML包含用于下列用途的標簽:

  • 定義屏幕分區(<b:panel>)
  • 交互式客戶(hù)端控制(<b:menu>)
  • 處理標準的用戶(hù)交互事件(onClick)
  • 處理高級的用戶(hù)交互事件(拖放和調整大小)
  • 管理客戶(hù)端狀態(tài)
  • 處理可視化效果(使修改任意CSS屬性的過(guò)程動(dòng)畫(huà)化)
  • 數據綁定
  • 使用XSLT的一個(gè)子集進(jìn)行客戶(hù)端轉換

用于J2EE的Backbase XML Server

  Backbase XML Server (BXS)是一個(gè)服務(wù)器端的引擎,用于把BPC鏈接到任意J2EE后端。和BPC一樣,BXS是完全基于XML的,其編程是聲明性的。它使用一種XML管道架構,提供功能強大的服務(wù)器端轉換和聚合。

  BXS附帶一些用于訪(fǎng)問(wèn)最常用的數據源(包括Web服務(wù)、數據庫、文件系統和本地Java對象)的開(kāi)箱即用任務(wù)。我們使用Backbase標簽對從這些源獲得的數據進(jìn)行聚合,然后使用XSLT進(jìn)行轉換。結果以無(wú)格式XML數據或BXML表示代碼的形式返回給BPC。

  BXS還提供一些應用服務(wù),包括身份驗證、授權、日志記錄和用戶(hù)跟蹤。圖8顯示了BXS的總體架構。

圖8. BXS架構

Eclipse開(kāi)發(fā)工具

  為了讓J2EE開(kāi)發(fā)人員可以只使用一種開(kāi)發(fā)工具就能創(chuàng )建完整的Web應用程序,包括富前端,Backbase提供了一個(gè)Eclipse插件。如圖9所示,該插件提供了在Eclipse中突出顯示語(yǔ)法和Backbase標簽代碼自動(dòng)完成的功能。

圖9. Backbase Eclipse插件

  注意:Eclipse的可視化拖放開(kāi)發(fā)插件還處在開(kāi)發(fā)階段。

部署到BEA WebLogic

  BXS是一個(gè)與標準兼容的J2EE應用程序,可以將其部署到任何J2EE應用服務(wù)器上。圖10顯示了如何使用WebLogic控制臺把BXS部署到BEA WebLogic Server。

圖10. 把BXS部署到BEA WebLogic

實(shí)現Backbase RIA Pet Store

  下面的順序圖包括更多詳細信息,可以幫助您更好地理解如何實(shí)現Backbase pet store。該順序圖顯示了在應用程序的初始化加載期間BPC與BXS之間的交互,如圖11所示,它包括以下4個(gè)步驟:

  • 初始化:用戶(hù)在瀏覽器中輸入寵物商店的URL;對BPC進(jìn)行初始化。
  • 應用程序布局:觸發(fā)正在構造的事件;BPC構建整體應用程序布局;寵物類(lèi)別被加載并顯示在選項卡中。
  • 默認數據:默認情況下加載狗的類(lèi)別;最初顯示8張狗的圖片,并帶有向前/向后和排序功能。

  用戶(hù)交互:用戶(hù)點(diǎn)擊Next按鈕便可顯示編號從9到16的狗圖片。

圖11.順序圖:富商店前端

  • 初始化

    從用戶(hù)在瀏覽器中輸入寵物商店的URL開(kāi)始,這將導致從Web服務(wù)器請求一個(gè)索引頁(yè)面。

    索引頁(yè)面包含用于實(shí)例化BPC的代碼。索引頁(yè)面是XHTML和BXML標簽的結合,包含負責啟動(dòng)富前端的初始化事件處理程序。

    BPC初始化代碼:

    <...><body onload="bpc.boot(‘/Backbase/‘)">    <...>    <xmp b:backbase="true"    style="display:none;height:100%;">    <s:loading>    <div style="position:absolute;width:20%;    top: 50px;left: 35%;">    <center>Please wait while loading...    </center>    </div>    </s:loading>    <...>    <!-- Include petshop specific behaviors -->    <s:include b:url="petshop.xml"/>    
  • 應用程序布局

    加載頁(yè)面之后,BPC就會(huì )處理正在構造的事件,以便開(kāi)始構建總體的應用程序布局。

    應用程序布局由幾個(gè)面板組成,它們將屏幕劃分為幾個(gè)部分。頂行有一個(gè)固定高度的寵物商店徽標,接下來(lái)的主行是實(shí)際的商店,大小可以調整。主行分為兩列,左邊一列是產(chǎn)品類(lèi)別,右邊一列是購物車(chē)和歷史記錄。

    產(chǎn)品類(lèi)別使用選項卡式的導航,每個(gè)寵物類(lèi)別一個(gè)選項卡。這些選項卡是動(dòng)態(tài)構造的,具體過(guò)程是通過(guò)BXS從一個(gè)XML文件加載類(lèi)別,然后通過(guò)一個(gè)客戶(hù)端模板把這些類(lèi)別轉換為選項卡,該轉換模板的BPC代碼如下:
    <s:task b:action="transform"    b:stylesheet="b:xml(‘categories‘)"    b:xmldatasource="b:url(‘categories.xml‘)"    b:destination="id(‘main-content‘)"    b:mode="aslastchild" />    

    下面是用于從文件系統把類(lèi)別加載為XML的BXS代碼:

    <bsd:pipeline equals="categories.xml"    access="public">    <bsd:readxml input="file:/categories.xml"/>    </bsd:pipeline>    

    下面是用于創(chuàng )建選項卡式導航的BPC客戶(hù)端模板:

    <b:tabrow>    <s:for-each b:select="categories/category">    <b:tab>    <s:attribute b:name="b:followstate">    id(‘<s:value-of b:select="name"/>‘)    </s:attribute>    <s:value-of b:select="name"/>    </b:tab>    </s:for-each>    </b:tabrow>    

    所有BPC代碼(用藍色表示)都在客戶(hù)端執行,而所有BXS代碼(用紅色表示)都在服務(wù)器端執行。注意,在本例中,我選擇了在客戶(hù)端進(jìn)行轉換,因為數據集很小。下面我會(huì )給出一個(gè)在服務(wù)器端轉換的例子。兩種轉換都要用到XSLT語(yǔ)法。Backbase的一個(gè)強大功能就是,前端開(kāi)發(fā)人員可以根據情況選擇在客戶(hù)端還是服務(wù)器端處理表示邏輯。語(yǔ)法似乎允許輕松地把代碼從客戶(hù)端移到服務(wù)器端,或者反之。

    以上的代碼示例應該可以使您了解到,借助于Backbase,Ajax編程變得多么輕松。結合了DHTML的聲明性方法則更容易上手。使用附加的B標簽不僅可以使界面更加豐富,而且可以使開(kāi)發(fā)人員的效率更高。諸如<b:tab>之類(lèi)的單個(gè)標簽可以代替多行HTML和JavaScript代碼,而且保證可以用于各種瀏覽器。

  • 默認數據

    顯示商店前端時(shí),默認情況下顯示的是狗的類(lèi)別。對于本案例,BXS負責此項操作。BXS從一個(gè)Web服務(wù)獲得數據,將其放入緩存,然后生成BXML表示代碼,再把這些表示代碼發(fā)回給BPC。服務(wù)器還通過(guò)一項配置設置確定一個(gè)頁(yè)面上可以顯示的動(dòng)物數量,并根據需要加入了Next和Previous按鈕。最后,服務(wù)器還提供了按照名稱(chēng)或價(jià)格進(jìn)行排序的功能。

    下面的代碼片斷演示了服務(wù)器功能。外部管道products-overview.xml首先調用catalog.xml子管道。該子管道要么返回緩存中的寵物信息,要么調用另一個(gè)子管道catalog.ws。在緩存沒(méi)有命中的情況下,內部管道catalog.ws會(huì )從Web服務(wù)獲取寵物信息。

    外部管道獲得寵物信息,然后進(jìn)行XSLT轉換,從而以4x2表格顯示這些信息,并帶有Next和Previouse按鈕,然后把BXML格式的代碼發(fā)回給BPC。BPC呈現它接收到的BXML。

    有3個(gè)嵌套的BXS管道分別用于從Web服務(wù)獲取數據、將其放入緩存,以及通過(guò)XSLT轉換創(chuàng )建BXML輸出:

    <bsd:pipeline equals="products-overview.xml"    access="public"/>    <bsd:callpipe pipe="catalog.xml"/>    
    <bsd:pipeline equals="catalog.xml" access="private">    <bsd:exist field="{global:petstore-catalog}">    <bsd:readxml>{global:petstore-catalog}    </bsd:readxml>    <bsd:otherwise>    <bsd:callpipe pipe="catalog.ws"/>    
    <bsd:pipeline equals="catalog.ws"    access="private">    <bsd:try>    <bsd:callws wsdl="PetstoreCatalog.wsdl"    method="getAll"/>    <bsd:callpipe pipe="strip-root-ns"/>    <bsd:catch>    <bsd:xslt xslt="error.xslt">    <bsd:param name="errormsg">{error:message}    </bsd:param>    <bsd:param name="errorsrc">{error:source}    </bsd:param>    </bsd:xslt>    </bsd:catch>    </bsd:try>    </bsd:pipeline>    <bsd:writexml>{global:petstore-catalog}    </bsd:writexml>    </bsd:otherwise>    </bsd:exist>    </bsd:pipeline>    <bsd:extractfilter xpath=    "category[name/text()=‘{requestparam:category}‘]"/>    <bsd:xslt xslt="products/products-overview.xslt">    <bsd:param name="category">    {requestparam:category}    </bsd:param>    <bsd:param name="stepsize">    {global:stepsize}    </bsd:param>    <bsd:param name="sortorder">    {requestparam:sortorder}    </bsd:param>    <bsd:param name="sortfield">    {requestparam:sortfield}    </bsd:param>    </bsd:xslt>    </bsd:pipeline>    

    代碼示例再次清楚地說(shuō)明了,借助于Backbase,以聲明性的方式創(chuàng )建Ajax前端是多么容易的事情。例如,只要使用帶有一個(gè)WSDL引用作為屬性的<bsd:callws>標簽,就可以調用一個(gè)Web服務(wù)。

  • 用戶(hù)交互

    現在,最終用戶(hù)可以與寵物商店類(lèi)別進(jìn)行交互??梢允褂肗ext或Previous按鈕或者排序功能在動(dòng)物類(lèi)別中進(jìn)行瀏覽?;蛘?,只要點(diǎn)擊一下相應的選項卡,就可以轉到另一個(gè)類(lèi)別中。

    BPC和BXS對這種交互進(jìn)行了無(wú)縫處理。顯示已經(jīng)在客戶(hù)端上的數據時(shí),無(wú)需與服務(wù)器進(jìn)行任何通信。例如,購物者已經(jīng)從狗類(lèi)別轉到了貓類(lèi)別,然后再回到狗類(lèi)別??蛻?hù)端仍然擁有狗類(lèi)別的數據,所以可以馬上顯示出來(lái),這使得購物體驗變得更完美。其他的類(lèi)別需要從BXS獲取。BXS要么立即從其緩存返回它們,要們訪(fǎng)問(wèn)Web服務(wù)來(lái)獲得新數據。

  為了詳細說(shuō)明Backbase Ajax寵物商店的實(shí)現,我把重點(diǎn)放在了初始化的步驟上。完整的寵物商店(可以從http://www.backbase.com/xmlserver下載)還包括以下功能:

    • 商店前端
      • 初始化。
      • 使用從文件加載的寵物類(lèi)別創(chuàng )建選項卡。
      • 默認情況下從Web服務(wù)加載Dog選項卡。
      • 通過(guò)緩存瀏覽Dog并對其進(jìn)行排序。
    • 寵物詳細情況
      • 使用跟蹤聚合來(lái)自緩存和數據庫的寵物詳細情況。
      • 創(chuàng )建可視化歷史記錄。
    • 購物車(chē)
      • 使用跟蹤添加到購物車(chē)。
    • 登錄
      • 登錄和身份驗證。
    • 退出
      • 退出和授權。
      • 確認。

結束語(yǔ)

  最近有很多人都在研究Ajax。Ajax的優(yōu)點(diǎn)已經(jīng)在實(shí)踐中得到了證明。定制Ajax的缺點(diǎn)在于它的復雜性和不兼容性。大量客戶(hù)端JavaScript的出現意味著(zhù)開(kāi)發(fā)人員很可能陷入到瀏覽器實(shí)現差別的泥潭中去。另外,JavaScript這種語(yǔ)言不適用于復雜的應用程序。

  為了開(kāi)發(fā)易于管理的、可伸縮的和適應未來(lái)變化的Ajax解決方案,開(kāi)發(fā)人員所需使用的工具應該具有比定制部件開(kāi)發(fā)更多的功能。Backbase Ajax軟件提供了一個(gè)功能全面的客戶(hù)端GUI管理引擎(Backbase Presentation Client)、一個(gè)靈活的服務(wù)器端XML管道(Backbase XML Server)和一種聲明性的基于標簽的UI語(yǔ)言,BXML(Backbase eXtensible Markup Language)。該方法具有幾個(gè)優(yōu)點(diǎn)。

  首先,Backbae易于使用。它的聲明性語(yǔ)言水平地擴展了DHTML;它完全對開(kāi)發(fā)人員隱藏了瀏覽器兼容性的問(wèn)題;而且它帶有一套開(kāi)發(fā)和調試工具。

  其次,Backbase是一個(gè)功能全面的Ajax GUI管理系統。Backbase的先進(jìn)性大大超過(guò)了其他Ajax框架,它完全把重點(diǎn)放在提供一個(gè)部件庫或客戶(hù)端-服務(wù)器通信(如DWR)上。在控件和客戶(hù)端-服務(wù)器通信的基礎上,Backbase提供了用于如下用途的標簽:提供電影效果,隨需應變的數據加載,數據綁定和客戶(hù)端的數據轉換,對于Back和Forward按鈕的支持,完善的GUI狀態(tài)管理,等等。所有這些功能對于目前的Ajax Web應用程序來(lái)說(shuō)都是必需的。

  最后,Backbase是以兼容的方式提供所有客戶(hù)端和服務(wù)器端的功能。用戶(hù)可以使用富Ajax前端擴展現有的應用程序,同時(shí)無(wú)需修改后端。對于整個(gè)表示層來(lái)說(shuō),它的架構是時(shí)新的、模塊化的,而且它基于XML。

參考資料

原文出處

A Backbase Ajax Front-end for J2EE Applications

http://dev2dev.bea.com/pub/a/2005/08/backbase_ajax.html

 作者簡(jiǎn)介
Mark Schiefelbein自2005年2月以來(lái)一直擔任Backbase的產(chǎn)品管理主管。Mark極大地推動(dòng)了Backbase Rich Internet Application的全球推廣。
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
網(wǎng)址聯(lián)盟-Ajax學(xué)習-網(wǎng)址鏈接大全
開(kāi)發(fā)保留標準瀏覽器功能的AJAX應用程序
j2ee工程師的學(xué)習之路,你走到哪了? - java人渣 - ItEye技術(shù)網(wǎng)站
Ajax的優(yōu)點(diǎn)和缺點(diǎn)
Web Service 與 SOA 關(guān)系 區別
使用 Dojo 工具包和 JSON-RPC 構建企業(yè) SOA Ajax 客戶(hù)端
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久