在實際工作中構建大型的應用很難。通常你會把門戶(portal)和企業集成(EAI)搞混,這樣你的工作更難完成。你必須做出一系列的困難決定,很多決定也許會對項目的其余部分產生或好或壞的影響。
在你做出架構性的重要選擇之前,都應該深入考慮你構建的應用的每一層( 從前端的負載平衡系統到后端的企業級的系統,也許是全球性的)。即使只是處理這些問題的一個子集(也許"只是"代表那些與門戶集成相關的一些問題),你也將面臨很多棘手問題:
為了得到最好的效果,我是不是應該把我的web層和一些流程組件連接起來,讓這些組件充當工作流和應用集成層的業務代理,讓集成層處理EAI的復雜問題?是不是每次都可以按這樣的套路進行呢?
我的web層和工作流層是不是應該采用松耦合(例如,使用JMS),或者在某種情況下,為了利用BMP(Business PRocess Management)的API提供的工作列表(worklist)功能的好處,是否可以不用松耦合?
在創建統一用戶資料(Unified User Profile)時,我如何精確的和CRM,ERP和安全系統打交道?
門戶內容治理參考實現是否提供了足夠多的功能?我是不是需要評估一下第三方的解決方案?
我們是否應該利用新的證書映射提供者(credential mapping provider)通過J2EE CA Adapters傳遞認證信息?還是用Web services的SAML (Security Assertion Markup Language)?我們的第三方單點登陸(Single Sign-On (SSO))安全系統是否支持這些機制?我有沒有SSO?我是否需要一個呢?
幸運的是,這只是一篇雜志中的文章,所以我們可以先把一些問題放在一邊,以利于我們集中精力,減少篇幅。本文描述了WebLogic 7.0 Enterprise Platform里可以用來在門戶中用Web services進行集成的一些工具和技術。在一個簡要的原型系統例子中我們對這些技術進行了演示。這里我定義的門戶集成是指:把從不同的資源(通常是外部的)中獲得的信息,通過檢索、轉換、組織、顯示,形成統一的、個性化的整體。本文主要是討論Web service,所以只是簡要介紹這些門戶集成功能中對第三方的內容和文檔的治理的功能,該功能在企業架構中應當被考慮。我將簡要介紹以下內容:
J2EE CA 應用視圖(J2EE CA application Views)
Workshop Application集成控制(Workshop Application Integration Controls )
Liquid 數據視圖和源 (Liquid Data Views and Sources)
應用集成和Web services 工作流插件(Application integration and Web services workflow plug-ins)
統一用戶資料框架(The Unified User Profile Framework )
Web services Portlet向導 (The Web Services Portlet Wizard )
以上內容為使用Web services進行松耦合的企業門戶集成提供了非常強大的框架。請注重,本文假設讀者對WebLogic Portal 4.0和Integration 2.1非常熟悉,在http://e-docs.bea.com和BEA WebLogic Developer's Journal雜志中都有關于WebLogic Portal 4.0和Integration 2.1的豐富的資料。
門戶集成(Portal Integration):一個原型示例
我們的例子是一個IT技術支持部門的案例治理門戶。問題單根據技術支持工程師的專業(例如數據庫,用戶界面,事務治理)和技術等級(一級,二級等)分發。每個工程師有一個相關的資料,資料同時存在于一個安全的關系數據庫和一個外部的CRM系統中,資料中有該工程師的專業和技術等級信息,也可能有工程師的治理者——高級工程師的信息。高級工程師可以分析下屬的案例歷史,包括完成案例的平均時間和案例數量增長的百分比。每個案例的實際數據存在兩個外部問題單系統中,一個系統相對較新,使用了Web services,另一個系統較舊,有一個專有界面。除了核心的案例治理功能,每個工程師的門戶都可以個性化,使用另外的含有公開技術論壇的Portlet,含有內部錯誤報告更新的Portlet,以及類似的Portlet.
應用視圖(Application Views):實際上所有的內容都可以展示
J2EE Connector Architecture (J2EE CA) 適配器是連接J2EE組件和外部企業信息系統(EIS)的橋梁。EIS所需的適配器接口經常使用專有的協議、數據格式和認證機制。WebLogic J2EE CA適配器處理協議轉換,也常用于處理數據格式的轉換,或者利用WebLogic里的證書映射提供者傳遞認證信息到EIS中,假如EIS含有XA,那么XA事務也可以傳遞。
J2EE CA 1.0規范沒有規定適配器的標準的接口(只提供了一個可選的接口),也沒有規定一個標準的信息格式或者EIS發出的異步事件。1.5規范(現在是建議最終草稿版的第二版)修補很多類似的漏洞,1.5版規范會包括在J2EE 1.4中。
WebLogic 集成應用視圖框架(WebLogic Integration Application View Framework)在J2EE CA 適配器之上提供了一層,彌補了1.0規范中的不足(1.5規范中的改進在此由應用視圖提供)。當你創建一個應用視圖的時候,你也指定了一個和相關業務服務以及EIS中的事件相對應的xml schema,當與請求schema相應的XML文件傳過來時,服務被激活,返回結果根據響應schema以相應的XML文件返回。事件以異步的方式分發到客戶端,同樣是按照協商好的schema,以 XML文件的形式傳遞。我們通過基于瀏覽器的應用集成控制臺(Application Integration console)來創建應用視圖,在控制臺里把服務和事件同適配器連在一起,指定相應的schema.
新聞熱點
疑難解答