国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
JFoxPortal(JFox門戶)開發(fā)計劃

JFoxPortal(JFox門戶)開發(fā)計劃

1.概述

JSR-168 規(guī)范說明:

JSR-168 (Enterprise Portlet Specification 1.0 Final Draft 發(fā)表于2003-09-03,將于2003-10-06 Final Approval Ballot)是用于portlet級別開發(fā)的新Java portlet標準。依循于 JSR-168的Portlet可以移植于其他的Portal Container上。 JSR-168規(guī)范的站點: http://www.jcp.org/en/jsr/detail?id=168

Portlet 說明:

在滿足門戶可定制性的需求上,引入了門戶組件概念Portlet,Portlet是一個可插拔的組件,關于Portlet有各種定義, JetSpeed在提交的JSR-168 portlet API specifications對Portlet的定義如下:
Portlet是一個Web組件,可以被容器管理,可以產(chǎn)生動態(tài)內容。 Portlet可以很容易地被插入并且運行于一個Web應用中,Portlet是被設計成聚合大量內容的組合頁面,舉例:同樣一個Portlet,根據(jù)不同的用戶,可以產(chǎn)生不同的實例,這些實例中是根據(jù)用戶設置包含不同的內容,也就是滿足用戶的可定制性。

2.第一階段:需求分析及相關文檔收集階段

當前一些 OpenSource Enterprise Portal 分析

JetSpeed

JetSpeed是Apache (http://jakarta.apache.org/jetspeed) 組織的一個開源項目,IBM的WebSphere Portal Server正是基于 JetSpeed進行二次開發(fā)。
為了實現(xiàn)門戶內容的有效管理和監(jiān)控,JetSpeed的重要內容組件Slide引入了Domain和Namespace方面的概念,對所有資源進行樹形結構的控制,在Slide中,Domain是一系列Namespace的聚合,它類似文件系統(tǒng)中的"/"根目錄, domain 可以控制在其中登記的 Namespace的訪問權限以及執(zhí)行Namespace的初始化和連接等管理工作。
Namespace是個自我獨立的有實體內容的容器,它不能包含指向或連接到其它namespace,每個應用系統(tǒng)可以是一個NameSpace, Namespace包含獨立的數(shù)據(jù)和這些數(shù)據(jù)的安全訪問機制。
JetSpeed雖然提供了豐富的Portal技術功能,但是其可定制性比較差,其重要的內容組件Slide也比較難以讓人理解,它的安全控制框架與通用的J2EE使用JAAS不相融合,所有這些都造成了在其基礎上進行二次開發(fā)的難度。

Liferay

Liferay (http://www.liferay.com) 代表了完整的J2EE應用,使用了Web、EJB以及JMS等技術,特別是其前臺界面部分使用Struts 框架技術,基于XML的portlet配置文件可以自由地動態(tài)擴展,使用了Web Services來支持一些遠程信息的獲取,使用 Apahce Lucene實現(xiàn)全文檢索功能。
Liferay的缺點是它缺乏一個簡單清晰可拓展的架構設計,portlet設計顯得比較凌亂,進行二次開發(fā)有一定的難度。

JPortal
JPortal (http://jportal.sourceforge.net) 是目前最為符合JSR-168 Spec的Portal實現(xiàn)。他使用了攔截器技術和 Dynamic Proxy來實現(xiàn)Portlet的可插入設計。他目前只是一個原型的實現(xiàn)并且之關注于實現(xiàn) Portal Container,并沒有過多的 Portlet實現(xiàn)和設計。
優(yōu)點在于其的架構清晰,易于擴展,但在Portal的工業(yè)強度上需求的差距是比較大的,沒有分布式的概念是他目前架構的一個致命的地方。

3.第二階段:技術選型階段

目標: 努力克服 Liferay 結構性混亂的問題,實現(xiàn) Portlet 組件 jar HotSpot 特性。完全符合JSR-168規(guī)范。具有工業(yè)強度的Portal Container設計。Portal的難點和要點都是將動態(tài)功能最大化以及界面的最大可選擇性。

MVC層和表述層的技術選型:
Jarkarta Struts 1.1 : http://jakarta.apache.org/struts
說明: MVC B/S 構架實現(xiàn)
Jarkarta Velocity 1.3.1 : http://jakarta.apache.org/velocity
說明: 替代JSP的表述層方案

邏輯層的技術選型:
EJB (Enterprise Java Bean) : 符合 EJB 2.1規(guī)范。
說明: 使用EJB的SessionBean和MessageDrivenBean機制,以實現(xiàn)分布式的功能需求。
EJB 服務器 : JBoss Enterprise Server 3.2.x
說明: 開源的J2EE應用服務器,系統(tǒng)會通過XDoclet來實現(xiàn)不同J2EE應用服務器的實現(xiàn)。

數(shù)據(jù)持久層的技術選型:
Hibernate 2.0.1 : http://www.hibernate.org
說明: 符合JDO 2.0規(guī)范的數(shù)據(jù)持久性技術的實現(xiàn)方案,使用了O/R Mapping技術。

Portlet 實現(xiàn)的技術選型:
JMX (Java Management Extension) 1.3 : http://java.sun.com/products/JavaManagement/
說明: Java管理擴展,是一個為應用程序、設備、系統(tǒng)等植入管理功能的框架。
Jakarta Commons Modeler : http://jakarta.apache.org/commons/modeler.html
說明: 配置組件的模型MBean元信息,還利用一種算法為復雜資源類提供MBean類的基本實現(xiàn)。

日志技術選型:
Jakarta Log4j : http://jakarta.apache.org/log4j
說明: 系統(tǒng)日志的紀錄包。
Jakarta Commons Logging : http://jakarta.apache.org/commons/logging.html
說明: 增強系統(tǒng)日志的記錄包工具。

測試框架選型:
Junit : http://www.junit.org
說明: 系統(tǒng)代碼測試工具。
Jakarta Cactus 1.6 Dev : http://jakarta.apache.org/cactus
說明: J2EE測試框架,測試服務器端的代碼。

Web Service 技術選型:
Apache Soap : http://ws.apache.org/soap
說明: Web Service Soap的開源實現(xiàn),系統(tǒng)基于他來實現(xiàn)相應的Web Service功能。
Apache Axis : http://ws.apache.org/axis
說明: Web Service 框架,是Soap的進一步實現(xiàn)。

其他技術選型:
XDoclet 1.2 Beta 2 : http://xdoclet.sourceforge.net/
說明: AOP(Attribute Oriented Programming)面向屬性編程來簡化組件之間的連續(xù)集成。通過生成部署描述符和支持代碼,大大地減少開發(fā)時間,是開發(fā)人員把重點放在應用程序邏輯代碼上。
Ant 1.5.4 : http://ant.apache.org
說明: 源代碼批量編譯工具。
JDom Beta 9 : http://www.jdom.org
說明: XML 解析工具。
Lucene 1.2 : http://jakarta.apache.org/lucene
說明: 全文本搜索工具包,具有的索引機制。

4.第三階段:Portal Container 架構設計

異地 Caching 機制構架:

由于Portal技術非常多的依賴于Web Service,而Web Service的網(wǎng)絡開銷是非常大的。如果每個request都進行網(wǎng)絡通訊,無疑性能是很低的。我們需要將一些經(jīng)常反復使用的狀態(tài)數(shù)據(jù)一直保存在內存中,在有效期內供客戶端不斷反復訪問。使用HashMap保存對象是實現(xiàn)的最基本思路,但是這只能實現(xiàn)單機系統(tǒng)的緩沖機制,一旦Portal的數(shù)據(jù)量級達到一定的程度就必須實現(xiàn)多臺服務器的"集群"Caching機制。

One Point Login(單點登陸)和權限管理:

單點登陸是Portal的重要技術,權限管理的粒度問題。

5.第四階段:Portlet 功能性設計

JFox Enterprise Portal Architect Analysis

1.總體結構分析

Portal 是基于 Web 的應用,一般來說,提供個人化、單點登陸、不同來源的內容集合和掛接信息系統(tǒng)的表述層。集合是指在一個Web 頁面中集成不同來源的內容的動作。一個Portal必須提供成熟的個人化特性來為用戶提供客戶化的內容。Portal 也可以有不同類型的portlet來為不同得用戶創(chuàng)建相關內容。

2.Portal Container實現(xiàn)分析

Portal 容器運行相應的Portal并提供給他們必須的運行期環(huán)境。一個Portlet容器承載Portlet并管理他們的運行期,它同樣為Portlet引用提供持久性儲存。Portlet容器從Portal獲得相應的請求并在Portlet中執(zhí)行它的請求。

3.良好的EJB設計構架
考慮方面:
JNDI 效率的考量。

4.Portlet 實現(xiàn)分析

基于動態(tài)代理技術(Dynamic Proxy)來實現(xiàn)相應的Portlet插入技術。

5.Portal Caching 實現(xiàn)

核心類是org.noah.cache.model.cache,通過構造一個new cache(Object obj),將需要cache的對象賦值進去,就能達到cache的目的,以后通過cache.getObject()可以得到這個對象。為了達到分布式cache目的,多態(tài)Server能共享同樣的Cache,使用了數(shù)據(jù)庫來持久化這些cache。

6.考慮做一個Service Framework來提供系統(tǒng)所需要的各種不同的服務,類似于Turbine的Service Framework。
本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
Liferay系列文章(四)Portal產(chǎn)品介紹--開放源碼Portal產(chǎn)品
有話好好說: 幾種開源Portal的簡單介紹分析
portal基礎知識
GenericMVCPortlet xref
PORTAL門戶平臺(27個)
透過portlet 上傳檔案(適用portal 4.2 api)
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服