談笑有鴻儒,往來(lái)無(wú)白丁

          在恰當(dāng)?shù)臅r(shí)間、地點(diǎn)以恰當(dāng)?shù)姆绞奖磉_(dá)給恰當(dāng)?shù)娜?..  閱讀的時(shí)候請(qǐng)注意分類,佛曰我日里面是談笑文章,其他是各個(gè)分類的文章,積極的熱情投入到寫(xiě)博的隊(duì)伍中來(lái),支持blogjava做大做強(qiáng)!向dudu站長(zhǎng)致敬>> > 我的微博敬請(qǐng)收聽(tīng)

          門戶網(wǎng)站( PORTAL )的定義

          什么是 Portal (門戶) ?

          Portal 的組成可以分為三部份 (1) Portal Server (2) Portlet Container (3) Portlet

          1)???????? Portal Server 的定義

          一個(gè) Portal (門戶網(wǎng)站)就是指一個(gè) Web-based 的系統(tǒng),通常都會(huì)提供個(gè)人化設(shè)置、單一登陸、以及由各種不同來(lái)源或不同網(wǎng)站取得各式各樣的信息,并且將這些信息放在網(wǎng)頁(yè)之中組合而成的呈現(xiàn)平臺(tái),門戶網(wǎng)站會(huì)有精巧的個(gè)人化設(shè)置去提供定制的網(wǎng)頁(yè),當(dāng)不同等級(jí)的使用者來(lái)瀏覽該頁(yè)面將獲得不同的信息內(nèi)容。

          2) Portlet Container 的定義

          portlet container 是提供 portlets 執(zhí)行的環(huán)境,包含了許多 portlets 并且管理他們的生命周期,他也會(huì)永遠(yuǎn)保存著 portlets 的喜好設(shè)置,一個(gè) portlet container 接收到來(lái)自 portal 的請(qǐng)求后,接著將這個(gè)請(qǐng)求傳遞給存在 container portlet 執(zhí)行。 portlet container 沒(méi)有義務(wù)去組合 portlets 產(chǎn)生的信息內(nèi)容,這個(gè)工作必須由 portal 來(lái)處理。 portal portlet container 可以放在一起視為同一個(gè)系統(tǒng)的組件,或者分開(kāi)成為兩個(gè)獨(dú)立的組件。

          什么是 Portlet?

          一個(gè) Portlet 是以 Java 技術(shù)為技術(shù)的 Web 組件,由 Portlet Container 所管理,專門處理客戶的 request 以及產(chǎn)生各種動(dòng)態(tài)的信息內(nèi)容。 Portlets 為可插式 ( pluggable ) 的客戶界面組件,提供呈現(xiàn)層成為一個(gè)信息系統(tǒng)。

          這些由 portlet 產(chǎn)生的內(nèi)容也被稱為片段 (fragment) ,而片段是具有一些規(guī)則的 Markup( HTML XHTML WML ) ,而且可以和其他的片段組合而成一個(gè)復(fù)雜的文件。而 Portlet 中的內(nèi)容正常來(lái)說(shuō)是與其他 Portlet 的內(nèi)容聚合而成為一個(gè) Portal 網(wǎng)頁(yè)。而 Portlet 的生命周期是被 Portlet Container 所管理控制的。

          客戶端和 portlets 的互動(dòng)是由 portal 通過(guò)典型的 request/response 方式實(shí)現(xiàn),正常來(lái)說(shuō),客戶會(huì)和 portlets 所產(chǎn)生的內(nèi)容互動(dòng),舉例來(lái)說(shuō),根據(jù)下一步的連接或者是確認(rèn)送出的表單,結(jié)果 portal 將會(huì)接收到 portlet 的動(dòng)作,將這個(gè)處理狀況轉(zhuǎn)向到目標(biāo) portlet 。這些 portlet 內(nèi)容的產(chǎn)生可能會(huì)因?yàn)椴煌氖褂谜叨胁煌淖兓耆歉鶕?jù)客戶對(duì)于這個(gè) portlet 的設(shè)置。

          ?

          門戶網(wǎng)站( PORTAL )的作用

          單點(diǎn)登錄

          ?????????Portal的單點(diǎn)登錄是基于應(yīng)用集成系統(tǒng)的,統(tǒng)一身份認(rèn)證系統(tǒng)實(shí)現(xiàn)系統(tǒng)的單點(diǎn)登錄:用戶只需要進(jìn)行一次登錄,就可以訪問(wèn)到所有的授權(quán)服務(wù);所有的應(yīng)用系統(tǒng)可以提供統(tǒng)一的用戶管理。Portal的用戶權(quán)限管理能夠控制到頁(yè)面或Portlet

          個(gè)性化定制

          針對(duì)不同的用戶登錄,可以展示不同的內(nèi)容。可以根據(jù)用戶的關(guān)注點(diǎn)不同來(lái)為用戶提供定制桌面的功能。

          資源整合

          完成應(yīng)用整合,以及業(yè)務(wù)整合的功能。不同的 web 系統(tǒng), web 業(yè)務(wù)平臺(tái)可以通過(guò) portlet web 剪切功能直接放入門戶里面來(lái)。

          門戶網(wǎng)站可選方案分析

          廠商的門戶平臺(tái):

          1、??????????? IBM WebSphere Portal

          2、?????????? BEA PORTAL

          廠商的門戶平臺(tái),一半都有自己的開(kāi)發(fā)標(biāo)準(zhǔn),現(xiàn)在都要求用 JSR168 的標(biāo)準(zhǔn)進(jìn)行開(kāi)發(fā),廠商的門戶成本比較高,穩(wěn)定性好,服務(wù)好產(chǎn)品的后期維護(hù)以及開(kāi)發(fā)都有比較成功的案例;

          開(kāi)源的門戶平臺(tái)

          JetSpeed

          JetSpeed Apache http:// jakarta.apache.org/jetspeed/ )組織的一個(gè)開(kāi)源項(xiàng)目, IBM WebSphere Portal Server 正是基于 JetSpeed 進(jìn)行二次開(kāi)發(fā)。

          在滿足門戶可定制性的需求上,引入了門戶組件概念 Portlet Portlet 是一個(gè)可插拔的組件,關(guān)于 Portlet 有各種定義, JetSpeed 在提交的 JSR-168 portlet API specifications 對(duì) Portlet 的定義如下:

          Portlet 是一個(gè) Web 組件,可以被容器管理,可以產(chǎn)生動(dòng)態(tài)內(nèi)容。 Portlet 可以很容易地被插入并且運(yùn)行于一個(gè) Web 應(yīng)用中, Portlet 是被設(shè)計(jì)成聚合大量?jī)?nèi)容的組合頁(yè)面,舉例:同樣一個(gè) Portlet ,根據(jù)不同的用戶,可以產(chǎn)生不同的實(shí)例,這些實(shí)例中是根據(jù)用戶設(shè)置包含不同的內(nèi)容,也就是滿足用戶的可定制性。
          為了實(shí)現(xiàn)門戶內(nèi)容的有效管理和監(jiān)控, JetSpeed 的重要內(nèi)容組件 Slide 引入了 Domain Namespace 方面的概念,對(duì)所有資源進(jìn)行樹(shù)形結(jié)構(gòu)的控制,在 Slide 中, Domain 是一系列 Namespace 的聚合,它類似文件系統(tǒng)中的 “/” 根目錄, domain 可以控制在其中登記的 Namespace 的訪問(wèn)權(quán)限以及執(zhí)行 Namespace 的初始化和連接等管理工作。

          Namespace 是個(gè)自我獨(dú)立的有實(shí)體內(nèi)容的容器,它不能包含指向或連接到其它 namespace ,每個(gè)應(yīng)用系統(tǒng)可以是一個(gè) NameSpace Namespace 包含獨(dú)立的數(shù)據(jù)和這些數(shù)據(jù)的安全訪問(wèn)機(jī)制。

          JetSpeed 雖然提供了豐富的 Portal 技術(shù)功能,但是其可定制性比較差,其重要的內(nèi)容組件 Slide 也比較難以讓人理解,它的安全控制框架與通用的 J2EE 使用 JAAS 不相融合,所有這些都造成了在其基礎(chǔ)上進(jìn)行二次開(kāi)發(fā)的難度。

          ? Liferay

          Liferay http://www.liferay.com )代表了完整的 J2EE 應(yīng)用,使用了 Web EJB 以及 JMS 等技術(shù),特別是其前臺(tái)界面部分使用 Struts 框架技術(shù),基于 XML portlet 配置文件可以自由地動(dòng)態(tài)擴(kuò)展,使用了 Web Services 來(lái)支持一些遠(yuǎn)程信息的獲取,使用 Apahce Lucene 實(shí)現(xiàn)全文檢索功能。

          Liferay Portal 是一套相當(dāng)成熟的 Java/J2EE portal system ,遵循 Portlet API JSR168 的標(biāo)準(zhǔn)。

          作為一個(gè)開(kāi)源 Portal 產(chǎn)品, Liferay Portal 提供對(duì)多個(gè)獨(dú)立系統(tǒng)的內(nèi)容集成,幫助多個(gè)組織實(shí)現(xiàn)更有效的合作。與其他商業(yè)的 Portal 產(chǎn)品相比, Liferay Portal 有著一系列的優(yōu)良特性,而且不需要付費(fèi)。

          Liferay 的缺點(diǎn)是它缺乏一個(gè)簡(jiǎn)單清晰可拓展的架構(gòu)設(shè)計(jì), portlet 設(shè)計(jì)顯得比較凌亂,進(jìn)行二次開(kāi)發(fā)有一定的難度 .

          Pluto

          Pluto 是一個(gè)滿足 Portlet API 規(guī)范的 Portlet 容器的實(shí)現(xiàn),它為開(kāi)發(fā)者提供了一個(gè)運(yùn)行 portlets 的工作平臺(tái)。然而,如果沒(méi)有一個(gè)驅(qū)動(dòng)器( driver ),也就是 Portal ,的支持的話,運(yùn)行和測(cè)試 Portlet 容器將非常之麻煩。 Pluto 本身也提供了一個(gè)簡(jiǎn)單的 Portal 模塊,該模塊僅僅是為了滿足 Portlet 容器和 JSR 168 的需要而寫(xiě)的。

          JBoss Portal ?

          JBoss Portal 提供了一個(gè)開(kāi)源符合標(biāo)準(zhǔn)的門戶平臺(tái),可以用其搭建 / 布局一個(gè)門戶網(wǎng)站的 web 界面,發(fā)布和管理內(nèi)容以及定制它的用戶體驗(yàn)。 JBoss Portal 最新版本中在個(gè)性化設(shè)置,身份驗(yàn)證,工作流都進(jìn)行重大更進(jìn)。此外還集成了 Google Gadgets ,以提高用戶工作效率。

          門戶網(wǎng)站發(fā)展規(guī)劃

          總體規(guī)劃圖

          ?

          外網(wǎng)的用戶通過(guò)門戶網(wǎng)站可以使用所有的業(yè)務(wù)系統(tǒng)以及短信、郵件、 OA 等原有的系統(tǒng),實(shí)現(xiàn)了應(yīng)用整合。

          由此可見(jiàn)門戶的重要地位,公司初步的選定采用 LifeRay 作為公司門戶產(chǎn)品的研發(fā)基礎(chǔ)。

          LifeRay 的基礎(chǔ)上研發(fā)出公司自己的門戶平臺(tái)。

          實(shí)施步驟

          平臺(tái)的學(xué)習(xí)使用

          開(kāi)發(fā)一個(gè)平臺(tái),首先要能熟練的使用這個(gè)平臺(tái),分析這個(gè)平臺(tái)的不足與優(yōu)點(diǎn),在學(xué)習(xí)使用的過(guò)程中應(yīng)該能夠提出自己對(duì)將要研發(fā)平臺(tái)的建議和規(guī)劃以及平臺(tái)的組成要素,開(kāi)發(fā)的工具以及環(huán)境配置。

          Portlet 的學(xué)習(xí)開(kāi)發(fā)部署

          ??? 平臺(tái)會(huì)使用以后,下一步就要開(kāi)發(fā)自己的公用的插件了,依據(jù) JSR168portlet 開(kāi)發(fā)的標(biāo)準(zhǔn),進(jìn)行 portlet 的開(kāi)發(fā),這一個(gè)階段首要的任務(wù)是開(kāi)發(fā)出自己的插件。然后開(kāi)始組織培訓(xùn),如何搭建開(kāi)發(fā)環(huán)境如何調(diào)試 Portlet ,以及平臺(tái)如何使用,還有就是如何部署自己開(kāi)發(fā)的 portlet 。這一步需要開(kāi)發(fā)人員有對(duì)新知識(shí)渴望學(xué)習(xí)的興趣。

          產(chǎn)品的包裝命名

          公司美工在開(kāi)發(fā)人員的指導(dǎo)下,一起對(duì)產(chǎn)品的插件以及平臺(tái)進(jìn)行界面美化,讓美工掌握如何對(duì)插件進(jìn)行美化,以及設(shè)計(jì)自己的產(chǎn)品的皮膚樣式。

          產(chǎn)品的測(cè)試銷售

          產(chǎn)品必須經(jīng)過(guò)嚴(yán)格的測(cè)試然后由銷售人員針對(duì)不同的用戶群銷售。

          產(chǎn)品維護(hù)

          作為平臺(tái)的維護(hù),主要是美工對(duì)皮膚的美化,還有就是開(kāi)發(fā)新的插件;這一塊可以有一個(gè)既懂美工又熟悉 portlet 編程的專人維護(hù)就可以了,因?yàn)榫S護(hù)的內(nèi)容很少,所以后期的維護(hù)成本得以控制。

          ?

          ?轉(zhuǎn)載注明出處:壞男孩

          posted on 2007-09-21 11:01 壞男孩 閱讀(5467) 評(píng)論(2)  編輯  收藏 所屬分類: 資源整合

          FeedBack:
          # re: 門戶網(wǎng)站建設(shè)方案
          2007-09-21 13:19 | rockniu
          # re: 門戶網(wǎng)站建設(shè)方案[未登錄](méi)
          主站蜘蛛池模板: 平江县| 涪陵区| 龙门县| 昌平区| 南岸区| 额尔古纳市| 武川县| 佛冈县| 海口市| 泸定县| 吴旗县| 永昌县| 策勒县| 青川县| 武宣县| 成武县| 大田县| 开化县| 庐江县| 铁力市| 宜春市| 彩票| 北流市| 镶黄旗| 吴川市| 怀仁县| 原阳县| 柞水县| 公主岭市| 蒙山县| 墨玉县| 绍兴县| 神农架林区| 诸暨市| 安化县| 新乡市| 泰和县| 洪泽县| 杭州市| 灵璧县| 双辽市|