Java:使用JSF、Ajax和Seam開發Portlets(3/3)

在這個系列文章的第一篇和第二篇中,我解釋了什麼是portlet bridge?以及如何在一個基本的JSF和 基於RichFaces(Ajax)的portlet中安裝和使用它,和當前能支援運行JBoss Portlet Bridge的portal服 務器的主要區別。最後這篇文章將集中講述Seam portlet的開發,和最新發行的JBoss Portlet Bridge Beta 4版本的所有特性和優勢。對於不太熟悉portlets的讀者來說,仔細閱讀前面兩篇文章會有助於更好

Java:使用JSF、Ajax和Seam開發Portlets(2/3)

在第一部分中,我們介紹了JSF portlet啟動並執行基礎知識,包括工程建立、三個基本的XML設定檔和 一些通用的JSF Portlet開發人員經常遇到的問題和解答。現在,我會講解如何通過RichFaces組件庫使用 AJAX來增強你的JSF portlet。工程搭建開發工具:為了與本文保持一致,請下載最新版本的Maven(我使用2.0.9)。安裝Maven 2.0.9或更高版本設定Maven系統內容變數範例中使用的伺服器和二進位執行檔案:JBoss Portal 2.7

Java:應用JSF、Ajax和Seam開發Portlets(1/3)

如果你剛開始考慮應用portal解決方案,或者想瞭解把一個新的或現有的JSF應用整合進一個portal環 境有多容易,那麼本文絕對值得你仔細研讀。在過去幾年中,portals無論是在企業還是在增強portlet 2.0(JSR 286)規範中都得到了長足發展 。新2.0版本的portlets在彙總不同的應用,並將其呈現在同一個頁面的不同視窗方面賦於開發人員很大 的自由。此外,它還提供了認證功能,成熟的個人化特性和更好的處理AJAX的現成方法。JSR 301

Java:ajax進度條

在最近的一個項目中,有一個上傳功能:上傳一個cvs檔案,然後解析此檔案並寫入資料庫由於經常需要傳很大的檔案,客戶完成此功能往往需要40分鐘,在這個過程中,頁面也沒有任何提示,使用者體驗非常不好?為何不用ajax作一個進度條呢?分兩步完成此需求:一:寫一個簡單的ajax,實現最簡單的進度條功能。二:把此進度條改造為項目可用的進度條。一:最簡單的進度條1。用戶端每2秒發送一個createXMLHttpRequest請求給服務端.並得到服務端返回的進度資料.根據服務端返回的資料,用javascript

面向Java開發人員的Ajax: 使用Jetty和DWR實現Comet Web應用程式

作為一種廣泛使用的 Web 應用程式開發技術,Ajax 牢固確立了自己的地位,隨之而來的是一些通用 Ajax 使用模式。例如,Ajax 經常用於對使用者輸入作出響應,然後使用從伺服器獲得的新資料修改頁面的部分內容。但是,有時 Web 應用程式的使用者介面需要進行更新以響應伺服器端發生的非同步事件,而不需要使用者操作 —— 例如,顯示到達 Ajax 聊天應用程式的新訊息,或者在文字編輯器中顯示來自另一個使用者的改變。由於只能由瀏覽器建立 網頁瀏覽器和伺服器之間的 HTTP

hadoop詳解(二) java訪問hdfs

所有源碼在github上,https://github.com/lastsweetop/styhadoop讀資料使用hadoop url讀取比較簡單的讀取hdfs資料的方法就是通過java.net.URL開啟一個流,不過在這之前先要預先調用它的 setURLStreamHandlerFactory方法設定為FsUrlStreamHandlerFactory(由此工廠取解析hdfs協議),這個方

VoltDB簡介:對 Java 代碼使用一個記憶體型的、高效能的資料庫

簡介過去幾年來,出現了一種稱為 NoSQL 的新型資料庫管理系統。設計這些資料存放區是為了克服在擴充傳統關 係數據庫來處理一些應用程式時必須處理的資料負載類型的難題,比如說 Amazon。這種延展性的實現需要 一定的代價:NoSQL 系統通常不符合 ACID(原子性、一致性、隔離和耐久性);它們最終一致地表明,只要 給定一定量的時間,所有資料更新最終都會通過該系統傳播。這不符合某些類型的應用程式的要求。過去用於線上交易處理 (OLTP) 的關聯式資料庫管理系統確實提供了一致性保證(它們符合

Android中如何使用Java Mail API發送郵件

最近在考慮為已經有的一個應用程式增加一個使用者反饋的功能,使用者可以通過反饋功能將使用者的意見和建議、程式出現的問題以一種更符合使用者習慣的方式反饋回來。網上也有一些實現好的反饋程式的服務,包括bug的提交、程式的建議、程式使用中的問題,但是這樣的服務基本上不是完全開源和免費的,並且我對程式反饋的定位還是使用者可以把他的想法通過寫文字的方法發送回來就可以(不需要記錄崩潰時的系統狀況),所以還是決定在完全瞭解實現機制的基礎上來實現反饋功能。採用發送郵件的方式不需要自己構建伺服器,同時也符合我對反饋

利用 IBM Application Pattern for Java 部署到雲中

雲端運算的目標之一就是讓開發人員降低理解和管理軟硬體基礎架構的複雜性,使他們能夠專註於應用程式 的功能。這個目標通過基礎架構即服務 (IaaS) 雲和平台 (PaaS) 雲在不同程度上得到了實現。IaaS 雲提供 了硬體並允許您攜帶自己的軟體。PaaS 雲還額外提供了軟體,通常允許您關注於構建和部署應用程式、代表 您處理基礎架構和中介軟體的部署。本文簡單調查了在雲中運行 Java 的一些 PaaS 和 IaaS 選項,然後通過 IBM Application Pattern for Java

Java開發人員的新選擇:漫步雲端

近年來Web 2.0,AJAX,SaaS和SOA這些詞已經沒那麼流行了。這一陣子的熱點叫做“雲端運算”。所有人都在談論在雲端建立應用程式或往雲端轉移。找工作的時候,簡曆上的“熟悉雲端運算”或“精通雲端運算

Java開發2.0

Java開發2.0 - 使用Amazon SimpleDB進行雲端儲存,第1部分 - 開始使用SimpleDB和Amazon SDK在整個系列中,我和您了分享大量非關係型資料存放區,統稱為 NoSQL。在一篇最近的文章中,我向您展示了一個面向文檔的資料存放區 (CouchDB)與面向模式的關係型資料庫的巨大區別。此外,CouchDB 的整個 API 是 REST 式的,且支援不同的查詢方式:JavaScript 中定義 的 MapReduce 功能。很顯然,這是對傳統 JDBC 的一個很大突破。

Java IO學習總結

Java

java序列化的控制

正如大家看到的那樣,預設的序列化機制並不難操縱。然而,假若有特殊要求又該怎麼辦呢?我們可能有特殊的安全問題,不希望對象的某一部分序列化;或者某一個子物件完全不必序列化,因為對象恢複以後,那一部分需要重新建立。此時,通過實現Externalizable介面,用它代替Serializable介面,便可控制序列化的具體過程。這個Externalizable介面擴充了Serializable,並增添了兩個方法:writeExternal()和readExternal()。在序列化和重新裝配的過程中,會自

java的對象串聯

Java 1.1增添了一種有趣的特性,名為“對象序列化”(Object Serialization)。它面向那些實現了Serializable介面的對象,可將它們轉換成一系列位元組,並可在以後完全恢複回原來的樣子。這一過程亦可通過網路進行。這意味著序列化機制能自動補償作業系統間的差異。換句話說,可以先在Windows機器上建立一個對象,對其序列化,然後通過網路發給一台Unix機器,然後在那裡準確無誤地重新“裝配”。不必關心資料在不同機器上如何表示,

Java歸檔(jar)公用程式

Zip格式亦在Java 1.1的JAR(Java

java用Zip進行多檔案儲存

提供了Zip支援的Java

java壓縮檔

java的GZIP介面非常簡單,所以如果只有單個資料流需要壓縮(而不是一系列不同的資料),那麼它就可能是最適當選擇。下面是對單個檔案進行壓縮的例子: //: GZIPcompress.java// Uses Java 1.1 GZIP compression to compress// a file whose name is passed on the command// line.import java.io.*;import java.util.zip.*;public

java的壓縮類

Java 1.1也添加一個類,用以支援對壓縮格式的資料流的讀寫。它們封裝到現成的IO類中,以提供壓縮功能。此時Java 1.1的一個問題顯得非常突出:它們不是從新的Reader和Writer類衍生出來的,而是屬於InputStream和OutputStream階層的一部分。所以有時不得不混合使用兩種類型的資料流(注意可用InputStreamReader和OutputStreamWriter在不同的類型間方便地進行轉換)。Java 1.1壓縮類 功能CheckedInputStream

java重新導向標準IO

Java 1.1在System類中添加了特殊的方法,允許我們重新定向標準輸入、輸出以及錯誤IO流。此時要用到下述簡單的靜態方法調用:setIn(InputStream)setOut(PrintStream)setErr(PrintStream)如果突然要在螢幕上產生大量輸出,而且滾動的速度快於人們的閱讀速度,輸出的重新導向就顯得特別有用。在一個命令列程式中,如果想重複測試一個特定的使用者輸入序列,輸入的重新導向也顯得特別有價值。下面這個簡單的例子展示了這些方法的使用: //:

通過序列化進行深層複製(java)

若研究一下第10章介紹的那個Java 1.1對象序列化樣本,可能發現若在一個對象序列化以後再撤消對它的序列化,或者說進行裝配,那麼實際經曆的正是一個“複製”的過程。那麼為什麼不用序列化進行深層複製呢?下面這個例子通過計算執行時間對比了這兩種方法: //: Compete.javaimport java.io.*;class Thing1 implements Serializable {}class Thing2 implements Serializable

總頁數: 4058 1 .... 2743 2744 2745 2746 2747 .... 4058 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.