門戶網站(
PORTAL
)的定義
什么是
Portal
(門戶)
?
Portal
的組成可以分為三部份
(1) Portal Server (2) Portlet Container (3) Portlet
1)????????
Portal Server
的定義
一個
Portal
(門戶網站)就是指一個
Web-based
的系統,通常都會提供個人化設置、單一登陸、以及由各種不同來源或不同網站取得各式各樣的信息,并且將這些信息放在網頁之中組合而成的呈現平臺,門戶網站會有精巧的個人化設置去提供定制的網頁,當不同等級的使用者來瀏覽該頁面將獲得不同的信息內容。
2) Portlet Container
的定義
portlet container
是提供
portlets
執行的環境,包含了許多
portlets
并且管理他們的生命周期,他也會永遠保存著
portlets
的喜好設置,一個
portlet container
接收到來自
portal
的請求后,接著將這個請求傳遞給存在
container
的
portlet
執行。
portlet container
沒有義務去組合
portlets
產生的信息內容,這個工作必須由
portal
來處理。
portal
和
portlet container
可以放在一起視為同一個系統的組件,或者分開成為兩個獨立的組件。
什么是
Portlet?
一個
Portlet
是以
Java
技術為技術的
Web
組件,由
Portlet Container
所管理,專門處理客戶的
request
以及產生各種動態的信息內容。
Portlets
為可插式
( pluggable )
的客戶界面組件,提供呈現層成為一個信息系統。
這些由
portlet
產生的內容也被稱為片段
(fragment)
,而片段是具有一些規則的
Markup( HTML
、
XHTML
、
WML )
,而且可以和其他的片段組合而成一個復雜的文件。而
Portlet
中的內容正常來說是與其他
Portlet
的內容聚合而成為一個
Portal
網頁。而
Portlet
的生命周期是被
Portlet Container
所管理控制的。
客戶端和
portlets
的互動是由
portal
通過典型的
request/response
方式實現,正常來說,客戶會和
portlets
所產生的內容互動,舉例來說,根據下一步的連接或者是確認送出的表單,結果
portal
將會接收到
portlet
的動作,將這個處理狀況轉向到目標
portlet
。這些
portlet
內容的產生可能會因為不同的使用者而有不同的變化,完全是根據客戶對于這個
portlet
的設置。
?
門戶網站(
PORTAL
)的作用
單點登錄
?????????Portal的單點登錄是基于應用集成系統的,統一身份認證系統實現系統的單點登錄:用戶只需要進行一次登錄,就可以訪問到所有的授權服務;所有的應用系統可以提供統一的用戶管理。Portal的用戶權限管理能夠控制到頁面或Portlet
個性化定制
針對不同的用戶登錄,可以展示不同的內容。可以根據用戶的關注點不同來為用戶提供定制桌面的功能。
資源整合
完成應用整合,以及業務整合的功能。不同的
web
系統,
web
業務平臺可以通過
portlet
的
web
剪切功能直接放入門戶里面來。
門戶網站可選方案分析
廠商的門戶平臺:
1、???????????
IBM WebSphere Portal
2、??????????
BEA PORTAL
廠商的門戶平臺,一半都有自己的開發標準,現在都要求用
JSR168
的標準進行開發,廠商的門戶成本比較高,穩定性好,服務好產品的后期維護以及開發都有比較成功的案例;
開源的門戶平臺
JetSpeed
JetSpeed
是
Apache
(
http:// jakarta.apache.org/jetspeed/
)組織的一個開源項目,
IBM
的
WebSphere Portal Server
正是基于
JetSpeed
進行二次開發。
在滿足門戶可定制性的需求上,引入了門戶組件概念
Portlet
,
Portlet
是一個可插拔的組件,關于
Portlet
有各種定義,
JetSpeed
在提交的
JSR-168 portlet API specifications
對
Portlet
的定義如下:
Portlet
是一個
Web
組件,可以被容器管理,可以產生動態內容。
Portlet
可以很容易地被插入并且運行于一個
Web
應用中,
Portlet
是被設計成聚合大量內容的組合頁面,舉例:同樣一個
Portlet
,根據不同的用戶,可以產生不同的實例,這些實例中是根據用戶設置包含不同的內容,也就是滿足用戶的可定制性。
為了實現門戶內容的有效管理和監控,
JetSpeed
的重要內容組件
Slide
引入了
Domain
和
Namespace
方面的概念,對所有資源進行樹形結構的控制,在
Slide
中,
Domain
是一系列
Namespace
的聚合,它類似文件系統中的
“/”
根目錄,
domain
可以控制在其中登記的
Namespace
的訪問權限以及執行
Namespace
的初始化和連接等管理工作。
Namespace
是個自我獨立的有實體內容的容器,它不能包含指向或連接到其它
namespace
,每個應用系統可以是一個
NameSpace
,
Namespace
包含獨立的數據和這些數據的安全訪問機制。
JetSpeed
雖然提供了豐富的
Portal
技術功能,但是其可定制性比較差,其重要的內容組件
Slide
也比較難以讓人理解,它的安全控制框架與通用的
J2EE
使用
JAAS
不相融合,所有這些都造成了在其基礎上進行二次開發的難度。
?
Liferay
Liferay
(
http://www.liferay.com
)代表了完整的
J2EE
應用,使用了
Web
、
EJB
以及
JMS
等技術,特別是其前臺界面部分使用
Struts
框架技術,基于
XML
的
portlet
配置文件可以自由地動態擴展,使用了
Web Services
來支持一些遠程信息的獲取,使用
Apahce Lucene
實現全文檢索功能。
Liferay Portal
是一套相當成熟的
Java/J2EE portal system
,遵循
Portlet API JSR168
的標準。
作為一個開源
Portal
產品,
Liferay Portal
提供對多個獨立系統的內容集成,幫助多個組織實現更有效的合作。與其他商業的
Portal
產品相比,
Liferay Portal
有著一系列的優良特性,而且不需要付費。
Liferay
的缺點是它缺乏一個簡單清晰可拓展的架構設計,
portlet
設計顯得比較凌亂,進行二次開發有一定的難度
.
Pluto
Pluto
是一個滿足
Portlet API
規范的
Portlet
容器的實現,它為開發者提供了一個運行
portlets
的工作平臺。然而,如果沒有一個驅動器(
driver
),也就是
Portal
,的支持的話,運行和測試
Portlet
容器將非常之麻煩。
Pluto
本身也提供了一個簡單的
Portal
模塊,該模塊僅僅是為了滿足
Portlet
容器和
JSR 168
的需要而寫的。
JBoss Portal ?
JBoss Portal
提供了一個開源符合標準的門戶平臺,可以用其搭建
/
布局一個門戶網站的
web
界面,發布和管理內容以及定制它的用戶體驗。
JBoss Portal
最新版本中在個性化設置,身份驗證,工作流都進行重大更進。此外還集成了
Google Gadgets
,以提高用戶工作效率。
門戶網站發展規劃
總體規劃圖
?
外網的用戶通過門戶網站可以使用所有的業務系統以及短信、郵件、
OA
等原有的系統,實現了應用整合。
由此可見門戶的重要地位,公司初步的選定采用
LifeRay
作為公司門戶產品的研發基礎。
在
LifeRay
的基礎上研發出公司自己的門戶平臺。
實施步驟
平臺的學習使用
開發一個平臺,首先要能熟練的使用這個平臺,分析這個平臺的不足與優點,在學習使用的過程中應該能夠提出自己對將要研發平臺的建議和規劃以及平臺的組成要素,開發的工具以及環境配置。
Portlet
的學習開發部署
???
平臺會使用以后,下一步就要開發自己的公用的插件了,依據
JSR168portlet
開發的標準,進行
portlet
的開發,這一個階段首要的任務是開發出自己的插件。然后開始組織培訓,如何搭建開發環境如何調試
Portlet
,以及平臺如何使用,還有就是如何部署自己開發的
portlet
。這一步需要開發人員有對新知識渴望學習的興趣。
產品的包裝命名
公司美工在開發人員的指導下,一起對產品的插件以及平臺進行界面美化,讓美工掌握如何對插件進行美化,以及設計自己的產品的皮膚樣式。
產品的測試銷售
產品必須經過嚴格的測試然后由銷售人員針對不同的用戶群銷售。
產品維護
作為平臺的維護,主要是美工對皮膚的美化,還有就是開發新的插件;這一塊可以有一個既懂美工又熟悉
portlet
編程的專人維護就可以了,因為維護的內容很少,所以后期的維護成本得以控制。
?
?轉載注明出處:壞男孩
posted on 2007-09-21 11:01
壞男孩 閱讀(5451)
評論(2) 編輯 收藏 所屬分類:
資源整合