• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆 - 181, 文章 - 2, 評論 - 85, 引用 - 0
            數(shù)據(jù)加載中……

            IBM WebSphere 開發(fā)者技術(shù)期刊: 使用服務(wù)組件體系結(jié)構(gòu)構(gòu)建 SOA 解決方案——第 2 部分-----組裝 SCA 組件

            檢驗(yàn) IBM WebSphere Integration Developer 組裝的SCA 組件的上下文中的引用和連線。

            摘自 IBM WebSphere 開發(fā)者技術(shù)期刊

            引言

            在這一系列文章的第 1 部分,我們引入了服務(wù)組件體系結(jié)構(gòu)(Service Component Architecture,SCA)作為編程模型來構(gòu)建和組裝集成解決方案,包括簡要介紹什么是 SCA,以及一些相關(guān)術(shù)語的定義。我們還提供了一個(gè)通過 IBM WebSphere Integration Developer 使用 Java? 構(gòu)建 SCA 組件的示例,測試了該 SCA 組件,并使用 SCA 客戶端編程模型構(gòu)建了一個(gè)調(diào)用該 SCA 組件的示例 JSP 文件。在第 2 部分中,我們將繼續(xù)描述引用和連線,并介紹如何使用它們來組裝 SCA 組件。







            概述

            第 1 部分介紹的示例中,我們使用了一個(gè)簡單的 JSP 客戶端來調(diào)用 SCA 組件。該示例只用于演示;當(dāng)構(gòu)建您自己的實(shí)際自定義應(yīng)用程序時(shí),您可能會使用標(biāo)準(zhǔn) J2EE? 組件模型來實(shí)現(xiàn)應(yīng)用程序邏輯。J2EE Web 應(yīng)用程序?qū)⒗^續(xù)調(diào)用 Enterprise JavaBean 來訪問特定于應(yīng)用程序的功能。實(shí)際上,SCA 編程模型是用于業(yè)務(wù)集成、應(yīng)用程序組合和解決方案組裝的,而不是用于 J2EE 應(yīng)用程序開發(fā)的。SCA 客戶端(它可以是 J2EE)通常在進(jìn)程管理器外,例如它可以使用 BPEL 流程來編排工作流。與 BPEL 流程聯(lián)合部署的 Web 應(yīng)用程序也可以使用 SCA 編程模型來調(diào)用特定于應(yīng)用程序的功能。圖 1 顯示了 SCA 生態(tài)系統(tǒng)的一個(gè)示例。


            圖 1. SCA 生態(tài)系統(tǒng)
            圖 1. SCA 生態(tài)系統(tǒng)

            SCA 位于集成層。SCA 組件可以通過導(dǎo)入來調(diào)用 SCA 運(yùn)行時(shí)外的應(yīng)用程序。非 SCA 客戶端可以通過導(dǎo)出調(diào)用 SCA 組件。在集成層內(nèi),可以通過定義引用和使用連線來組合 SCA 組件,這將在本文中重點(diǎn)介紹。有了連線和引用,您就可以在開發(fā)時(shí)定義運(yùn)行時(shí)調(diào)用的特性;例如,使調(diào)用同步或異步,標(biāo)記調(diào)用的轉(zhuǎn)換邊界,等等。這些特性是在部署時(shí)讀取的,它們可以啟用所需的運(yùn)行時(shí)行為。圖 2 闡釋了這些高級概念。


            圖 2. 引用和連線的高級視圖
            圖 2. 引用和連線的高級視圖

            再次說明,我們關(guān)注的是集成層,而不是應(yīng)用層。另外,我們介紹的是較高級的集成,例如工作流編排或與 EIS 系統(tǒng)的高級集成。然而,出于演示目的,我們使用簡單的 Java 示例來顯示如何將組件連接到集成層中,強(qiáng)調(diào)的是連線和引用的功能而不是組件本身的實(shí)現(xiàn)。(在后續(xù)文章中,我們將介紹如何將 SCA 組件實(shí)現(xiàn)為 BPEL 流程和狀態(tài)機(jī),以及如何應(yīng)用連線技術(shù)。)因此我們使用一個(gè)按比例縮減的模型來闡釋引用和連線,如圖 3 所示;然而,我們要記住圖 2 中合適的 SCA 使用遠(yuǎn)景。


            圖 3. 簡化的引用和連線模型
            圖 3. 簡化的引用和連線模型






            引用

            正如第 1 部分所討論的,SCA 組件被打包成一個(gè) SCA 模塊。一個(gè)模塊中的 SCA 組件通過對調(diào)用的 SCA 組件定義引用來彼此交互,并且將這些引用連線到相同模塊中的其他 SCA 組件。圖 4 闡釋了這一概念。


            圖 4. 引用和連線概念
            圖 4. 引用和連線概念

            對調(diào)用組件的引用是用 SCDL 表示的,如下所示:


            清單 1
            												
            																		
            <scdl:component xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xmlns:java="http://www.ibm.com/xmlns/prod/websphere/scdl/java/6.0.0"
            xmlns:ns1="http://CreditApproval/CreditRequest"
            xmlns:scdl="http://www.ibm.com/xmlns/prod/websphere/scdl/6.0.0"
            xmlns:wsdl="http://www.ibm.com/xmlns/prod/websphere/scdl/wsdl/6.0.0"
            displayName="CreditApproval" name="CreditApproval">
              <interfaces>
                <interface xsi:type="wsdl:WSDLPortType" portType="ns1:CreditRequest">
                  <method name="calulateCreditScore"/>
                </interface>
              </interfaces>
              <references>
                <reference name="CreditHistoryPartner">
                  <interface xsi:type="java:JavaInterface" 
                  interface="approval.credit.credit.history.CreditHistory">
                    <method name="getCreditLimit"/>
                  </interface>
                  <wire target="CreditHistory"/>
                </reference>
                <reference name="CreditAgencyPartner">
                  <interface xsi:type="java:JavaInterface" 
                  interface="approval.credit.credit.agency.CreditAgency">
                    <method name="getCreditScore"/>
                  </interface>
                  <wire target="CreditAgency"/>
                </reference>
              </references>
              <implementation xsi:type="java:JavaImplementation" 
              class="sca.component.java.impl.CreditApprovalImpl"/>
            </scdl:component>
            												
            										

            引用的好處之一是能夠定義調(diào)用期間的服務(wù)質(zhì)量。當(dāng)在 Assembly Editor 中連線組件時(shí),可以指定服務(wù)質(zhì)量 (QoS) 限定符。這些限定符定義了調(diào)用期間在 SCA 運(yùn)行時(shí)管理組件的必要條件。







            限定符

            使用 SCA,您無需編程或更改服務(wù)實(shí)現(xiàn)代碼就可以對組件應(yīng)用 QoS 限定符(例如事務(wù)、安全性和可靠的異步調(diào)用)。在連線組件時(shí),您可以指定限定符來為組件以及訪問服務(wù)的客戶端提供擴(kuò)展的服務(wù)質(zhì)量。在 IBM WebSphere Process Server 中,您可以在三個(gè)地方定義 SCA 限定符:

            • 引用
            • 接口
            • 實(shí)現(xiàn)

            在運(yùn)行時(shí),這些規(guī)范確定了客戶端如何與目標(biāo)組件進(jìn)行交互。運(yùn)行時(shí)環(huán)境可以提供所需的任何額外處理,這取決于所指定的限定符。

            用于引用的限定符

            引用限定符可以指定異步調(diào)用的可靠性,以及是否應(yīng)該聯(lián)合目標(biāo)組件的方法,使之成為任何客戶端事務(wù)的一部分。

            引用限定符包括:

            • Asynchronous reliability - 允許發(fā)生異步調(diào)用。這些限定符還允許您指定消息的可靠性、請求和響應(yīng)超時(shí)。同時(shí)也能配置 Service Integration Bus——它在 IBM WebSphere Application Server 運(yùn)行時(shí)中提供消息傳遞平臺,因此對 WebSphere Process Server 可用。(有關(guān) Service Integration Bus 的信息,請參閱參考資料。)

            • Suspend transaction - 對于同步調(diào)用,當(dāng)使用同步編輯模型進(jìn)行調(diào)用時(shí),客戶端全局事務(wù)上下文始終會被傳播到目標(biāo)組件。(此限定符只影響客戶端全局事務(wù),因?yàn)楸镜厥聞?wù)從不傳播到目標(biāo)組件。)對于客戶端不想讓目標(biāo)組件與客戶端事務(wù)聯(lián)合的用例,需要使用掛起事務(wù)限定符設(shè)置來進(jìn)一步限定引用:

              • True 會在通過服務(wù)引用調(diào)用組件之前掛起當(dāng)前全局事務(wù)。
              • False(缺省值)指示運(yùn)行時(shí)在通過服務(wù)引用調(diào)用組件之前不要掛起全局事務(wù)。
            • Asynchronous invocation - 確定是否應(yīng)該進(jìn)行異步調(diào)用(作為任何客戶端事務(wù)的一部分)。值:

              • Call(缺省值)指示運(yùn)行時(shí)在進(jìn)行服務(wù)調(diào)用的同時(shí)將消息提交給異步調(diào)用的目的地。
              • Commit 指示運(yùn)行時(shí)將消息提交給異步調(diào)用的目的地的工作交給當(dāng)前工作范圍單元處理。
            • Suspend activity session - 活動會話能夠?qū)赡懿恢С址植际绞聞?wù)的資源進(jìn)行更高級的協(xié)調(diào)。集成解決方案中更可能出現(xiàn)此類情況;客戶端不想讓目標(biāo)組件與客戶端的活動會話相聯(lián)合,所以需要使用掛起活動會話限定符設(shè)置來進(jìn)一步地限定引用:

              • True 會在通過服務(wù)引用調(diào)用組件之前掛起當(dāng)前活動會話(如果存在)。
              • False(缺省值)指示運(yùn)行時(shí)在通過服務(wù)引用調(diào)用組件之前不要掛起任何處于活動狀態(tài)的活動會話。

            您可以指定引用限定符,以便它們應(yīng)用于服務(wù)組件的所有引用或者只應(yīng)用于獨(dú)立引用。如果需要,您還可以為每個(gè)引用指定這些限定符,在這種情況下它們將重寫任何頂級限定符設(shè)置。在 Properties 視圖中以灰色表示繼承的限定符,以黑色表示已賦值的限定符。繼承的限定符不能更改,除非您選擇定義它們的所在元素。

            用于接口的限定符

            接口限定符說明了被目標(biāo)服務(wù)支持的QoS,因此代表了一個(gè)與該服務(wù)客戶端的約定。

            接口限定符包括:

            • Join activity session - 確定目標(biāo)服務(wù)是否愿意加入傳播的活動會話范圍。值:

              • True 指示運(yùn)行時(shí)不要在接口邊界掛起活動會話(如果存在)。
              • False(缺省值)指示運(yùn)行時(shí)在接口邊界掛起活動會話(如果存在)。
            • Join transaction - 確定目標(biāo)服務(wù)是否愿意加入傳播的全局事務(wù)。值:

              • True 指示運(yùn)行時(shí)不要在接口邊界掛起全局事務(wù)(如果存在)。
              • False(缺省值)指示運(yùn)行時(shí)在接口邊界掛起全局事務(wù)(如果存在)。
            • Security permission - 使您能夠在 SCA 組件上定義 J2EE 角色。只有與聲明的角色相關(guān)聯(lián)的客戶端才能調(diào)用該組件。

            所有接口限定符都可以應(yīng)用于組件的三個(gè)級別:

            • 用于其所有接口
            • 用于單個(gè)接口
            • 用于某個(gè)接口的單個(gè)操作。

            操作的限定符覆蓋接口的限定符;接口的限定符覆蓋組件的所有接口的限定符。

            用于實(shí)現(xiàn)的限定符

            實(shí)現(xiàn)限定符提供確定服務(wù)權(quán)限和/或表示其對事務(wù)環(huán)境的需求的功能。

            接口限定符包括:

            • Activity session - 確定組件的處理是否在一個(gè)活動會話中執(zhí)行,除了全局事務(wù)上下文所提供的,它還提供一個(gè)備選的工作范圍單元。值:

              • True:組件將在活動會話的上下文中執(zhí)行。如果活動會話是在調(diào)用時(shí)出現(xiàn)的,則會添加該組件。
              • False(缺省值):組件將在現(xiàn)有的全局事務(wù)(如果存在)或本地事務(wù)的上下文中執(zhí)行。實(shí)現(xiàn)限定符為 activitySession=false 的組件必須使用接口限定符 joinActivitySession=false。
              • Any:如果存在活動會話,則組件會加入當(dāng)前活動會話。如果不存在活動會話,則組件會在現(xiàn)有的工作范圍單元或本地事務(wù)的上下文中執(zhí)行。
            • Transaction - 確定組件處理執(zhí)行的邏輯工作單元。對于邏輯工作單元,事務(wù)期間所做的全部數(shù)據(jù)修改都是作為一個(gè)單元一起提交或作為一個(gè)單元回滾的:

              • Global:組件將在全局事務(wù)的上下文中執(zhí)行。如果在調(diào)用時(shí)存在一個(gè)全局事務(wù),則該組件會被添加到該全局事務(wù)范圍。如果不存在全局事務(wù),則會建立新的事務(wù)范圍。
              • Local(缺省值):組件將在本地事務(wù)的上下文中執(zhí)行。
              • Any:如果存在一個(gè)全局事務(wù),則組件將加入當(dāng)前全局事務(wù)范圍。如果不存在全局事務(wù),則組件將在本地事務(wù)的上下文中執(zhí)行。
            • Security identity - 使您能夠指定組件擔(dān)當(dāng)?shù)纳矸荩c部署描述符上的 J2EE Run-As 約束類似。

            限定符是在 SCDL 文件中定義的:接口限定符是在接口部分定義的,實(shí)現(xiàn)限定符是在實(shí)現(xiàn)部分定義的,引用限定符是在引用部分定義的。(有關(guān)詳細(xì)信息,請查閱 WebSphere Process Server Information Center。)







            連線組件

            在對引用有了新的理解之后,我們現(xiàn)在可以將一些組件通過連線連接起來。我們將使用的示例十分簡單,但在這個(gè)過程中我們也會檢查各種可用的服務(wù)質(zhì)量。我們將繼續(xù)介紹在第 1 部分使用的信貸審批示例。

            在我們的示例中:

            • Credit Approval 組件必須調(diào)用 Credit History 組件以及 Credit Agency 組件。
            • Credit Approval 組件將作為這兩個(gè)服務(wù)的一個(gè) Facade。
            • Credit Approval 組件需要連線到其他組件。

            這一練習(xí)所需要的文件可以從本文所附帶的下載文件中獲得。

            設(shè)置工作區(qū)

            1. 啟動 WebSphere Integration Developer 并創(chuàng)建一個(gè)新的工作區(qū)(圖 5)。


              圖 5. 在 WebSphere Integration Developer 中創(chuàng)建工作區(qū)
              圖 5. 在 WebSphere Integration Developer 中創(chuàng)建工作區(qū)
            2. 關(guān)閉歡迎屏幕(圖 6)。


              圖 6. WebSphere Integration Developer 歡迎屏幕
              圖 6. WebSphere Integration Developer 歡迎屏幕
            3. 要從下載的文件導(dǎo)入項(xiàng)目交換文件,請右鍵單擊 Business Integration 視圖并選擇 Import(圖 7)。


              圖 7. 導(dǎo)入下載文件
              圖 7. 導(dǎo)入下載文件
            4. 選擇 Project Interchange,然后單擊 Next(圖 8)。


              圖 8. 導(dǎo)入項(xiàng)目
              圖 8. 導(dǎo)入項(xiàng)目
            5. 假設(shè)您已經(jīng)將下載的文件解壓縮到 C: 驅(qū)動器,則選擇 CreditApprovalPart2.zip 文件,然后單擊 Select All Finish(圖 9)。


              圖 9. 導(dǎo)入項(xiàng)目
              圖 9. 導(dǎo)入項(xiàng)目

            檢查組件

            在我們的示例中,我們將使用自底向上的開發(fā)風(fēng)格:我們有一個(gè)現(xiàn)有的 SCA 組件集并準(zhǔn)備對它們進(jìn)行集成。從 Business Integration 視圖中,您可以檢查該 SCA 模塊:

            1. 展開 CreditApproval 模塊(圖 10)。


              圖 10. 展開的 Credit Approval 模塊
              圖 10. 展開的 Credit Approval 模塊
            2. 請注意,它有三個(gè)接口和三個(gè) Java 實(shí)現(xiàn)。打開 CreditApprovalImpl Java 實(shí)現(xiàn)并轉(zhuǎn)到 calculateCreditScore() 方法。請注意,calculateCreditScore 同時(shí)與 CreditAgency 組件和 CreditHistory 組件進(jìn)行交互來完成其服務(wù)。您很容易想到將 CreditApproval Service 實(shí)現(xiàn)為 BPEL 流程或其他組件類型,但在本例中,我們用一個(gè)簡單的 Java 組件來作為 Facade。


              清單 2
              																
              																								
              public DataObject calulateCreditScore(DataObject creditApp) {
              		
              	ServiceManager serviceManager = new ServiceManager();
              
              	BOFactory bof = (BOFactory)serviceManager.locateService("com/ibm/websphere/bo/BOFactory");
              
              	DataObject creditRating = bof.create("http://CreditApproval", "CreditRating");
              
              	creditRating.setString("customerId", creditApp.getString("customerId"));
              		
              	CreditAgency creditAgency = (CreditAgency) 
              	serviceManager.locateService("CreditAgencyPartner");
              
              	Integer creditScore = creditAgency.getCreditScore(creditApp);
              
              	CreditHistory creditHistory = (CreditHistory) 
              	serviceManager.locateService("CreditHistoryPartner");
              		
              	Double creditLimit = creditHistory.getCreditLimit(creditApp);
              
              		
              	creditRating.setInt("creditScore", creditScore.intValue());
              	creditRating.setDouble("creditLimit", creditLimit.doubleValue());
              
              	return creditRating;
              	}
              																
              														

            3. 要打開 Assembly Editor,請雙擊 CreditApproval 集合(圖 11)。當(dāng) Assembly Editor 打開時(shí),會顯示三個(gè)組件(圖 12)。


              圖 11. 打開 Assembly Editor
              圖 11. 打開 Assembly Editor

              圖 12. Assembly Editor 中的組件
              圖 12. Assembly Editor 中的組件

            連線組件

            CreditApproval 組件通過使用簡單的 SCA 客戶端 API 來與 CreditAgency 和 CreditHistory 進(jìn)行交互。然而,要讓運(yùn)行時(shí)正確地調(diào)用這些服務(wù),需要將組件“連線”起來,使用 WebSphere Integration Developer 來進(jìn)行這一操作非常簡單。在我們的示例中,我們將接受缺省值。

            1. 選擇 CreditAproval 組件并將其連線到 CreditAgency 組件(圖 13)。


              圖 13. 連線組件
              圖 13. 連線組件
            2. 將顯示一個(gè)對話框(圖 14),表明將在 CreditApproval 組件上創(chuàng)建一個(gè)引用。選擇 OK


              圖 14. 匹配引用對話框
              圖 14. 匹配引用對話框
            3. 由于 CreditApproval 組件是一個(gè) Java 組件,所以我們需要用 WebSphere Integration Developer 生成 Java 接口以便能夠調(diào)用該組件。因此,在下一個(gè)對話框(圖 15)中選擇 Yes。如果 CreditApproval 已經(jīng)是一個(gè)完整的 BPEL 流程,則選擇 No。(請記住,在大多數(shù)情況下將使用 WSDL 作為集成層中的接口選擇。如果 User Interface 是與集成解決方案聯(lián)合部署的,則可以使用 Java 接口。)


              圖 15. 生成 Java 接口對話框
              圖 15. 生成 Java 接口對話框
            4. 重復(fù)步驟 9 到 11,將 CreditApproval 組件連線到 CreditHistory 組件。結(jié)果應(yīng)該與圖 16 類似。


              圖 16. 組件連線完成
              圖 16. 組件連線完成

            單元測試組件

            因?yàn)槲覀兪褂?Java 作為我們的實(shí)現(xiàn),所以可以在 Java SE 環(huán)境中對組件進(jìn)行單元測試。正如在第 1 部分所做的,我們很容易在 WebSphere Integration Developer 中調(diào)出單元測試工具:

            1. 右鍵單擊 CreditApproval 組件并選擇 Test Component(圖 17)。


              圖 17. 測試組件
              圖 17. 測試組件
            2. 將顯示單元測試工具。該單元測試功能的一個(gè)很好的優(yōu)點(diǎn)是它允許獨(dú)立測試組件,并且可以檢測引用和創(chuàng)建模擬器。在我們的例子中,我們自己測試集成,所以需要刪除模擬器。

            3. 切換到 Configurations 選項(xiàng)卡。

            4. 展開 Module CreditApproval 模塊,突出顯示 CreditAgency CreditHistory,并將它們從 Emulators 列表中刪除(圖 18)。現(xiàn)在,測試 CreditApproval 組件將導(dǎo)致調(diào)用 CreditHistory 和 CreditAgency 組件,而不會模擬交互。


              圖 18. 刪除模擬器
              圖 18. 刪除模擬器
            5. 切換回 Events 選項(xiàng)卡并突出顯示 Invoke 項(xiàng)(圖 19)。


              圖 19. Events 選項(xiàng)卡
              圖 19. Events 選項(xiàng)卡
            6. 填充輸入,如圖 20 所示。


              圖 20. 數(shù)據(jù)參數(shù)
              圖 20. 數(shù)據(jù)參數(shù)
            7. 單擊 Continue

            8. 選擇 Eclipse 1.4 JVM 選項(xiàng)(圖 21)。


              圖 21. 選擇部署位置
              圖 21. 選擇部署位置
            9. 檢查每個(gè)步驟的流程。您可以實(shí)際看到流經(jīng)組件的數(shù)據(jù)(圖 22)。


              圖 22. 事件流
              圖 22. 事件流
            10. 最終結(jié)果應(yīng)該與圖 23 類似。


              圖 23. 測試結(jié)果
              圖 23. 測試結(jié)果
            11. 關(guān)閉測試編輯器,不進(jìn)行保存。

            檢查服務(wù)質(zhì)量

            引用和連線是集成解決方案的關(guān)鍵,因?yàn)樗鼈兂橄蟪稣{(diào)用的方式和場合。當(dāng)在 WebSphere Process Server 中運(yùn)行時(shí),您可以定義想為調(diào)用設(shè)定的服務(wù)質(zhì)量。例如,您可以使調(diào)用異步化、可以更改事務(wù)上下文,或者使異步調(diào)用更加可靠。這里我們將通過檢查引用屬性來查看各種 QoS 選項(xiàng)。

            1. 選擇 CreditApproval 組件上的 CreditAgency 引用,如圖 24 所示。


              圖 24. 組件引用
              圖 24. 組件引用
            2. 轉(zhuǎn)到 Properties 視圖。您將注意到該引用被選中。


              圖 25. 選中的引用
              圖 25. 選中的引用
            3. Details 選項(xiàng)卡上(圖 26),將顯示被調(diào)用的接口和多樣性,以及作為目標(biāo)的連線。您可以更改調(diào)用的多樣性;對于異步調(diào)用,這樣可以以一種發(fā)布/訂閱方式調(diào)用幾個(gè)組件。


              圖 26. 引用詳細(xì)信息
              圖 26. 引用詳細(xì)信息
            4. 切換至 Qualifiers 選項(xiàng)卡(圖 27)以設(shè)置特定服務(wù)質(zhì)量。


              圖 27. Qualifiers 選項(xiàng)卡
              圖 27. Qualifiers 選項(xiàng)卡
            5. 單擊 Add 按鈕來查看幾個(gè)可用的服務(wù)質(zhì)量(圖 28)。


              圖 28. 服務(wù)質(zhì)量限定符
              圖 28. 服務(wù)質(zhì)量限定符
            6. 作為自我練習(xí),您可以試驗(yàn)這些限定符,請記住,這些質(zhì)量需要在 WebSphere Process Server 運(yùn)行時(shí)中測試。這些限定符包括事務(wù)質(zhì)量和異步質(zhì)量;要測試事務(wù)工作,您需要與資源交互的組件。特定服務(wù)質(zhì)量是在接口中定義的。這使得該組件能夠控制其他組件調(diào)用它的方式。

            7. 突出顯示 Assembly Editor 中的 CreditApproval 接口(圖 29),或者導(dǎo)航至 Properties 編輯器。


              圖 29. Assembly Editor 中選定的 CreditApproval
              圖 29. Assembly Editor 中選定的 CreditApproval
            8. 檢查服務(wù)質(zhì)量限定符(圖 30)和實(shí)現(xiàn)限定符。請注意,這些限定符是在被調(diào)用的服務(wù)(而不是調(diào)用它的服務(wù))上定義的。


              圖 30. 檢查限定符
              圖 30. 檢查限定符

            在 WebSphere Process Server 測試環(huán)境中測試

            要測試服務(wù)質(zhì)量,您通常需要在 WebSphere Process Server 中運(yùn)行,或者在 WebSphere Integration Developer 中為測試提供的 WebSphere Process Server 運(yùn)行時(shí)運(yùn)行。

            1. Servers 視圖中,右鍵單擊該服務(wù)器并選擇 Start(圖 31)。


              圖 31. 啟動測試環(huán)境中的服務(wù)器
              圖 31. 啟動測試環(huán)境中的服務(wù)器

              圖 32. 服務(wù)器已啟動
              圖 32. 服務(wù)器已啟動
            2. 當(dāng)服務(wù)器啟動后,您可以按照管理控制臺中的指示(圖 32),以一種類似于添加 J2EE 應(yīng)用程序的方式將該 SCA 模塊添加到服務(wù)器中,因?yàn)?SCA 模塊被包裝成 EAR 文件(如第 1 部分所提到的)。再次右鍵單擊服務(wù)器并選擇 Add and remove rojects...(圖 33)。


              圖 33. 添加和刪除項(xiàng)目
              圖 33. 添加和刪除項(xiàng)目
            3. 選擇 CreditApprovalApp 并將它添加到已配置的項(xiàng)目一側(cè)(圖 34)。


              圖 34. 將項(xiàng)目添加到服務(wù)器
              圖 34. 將項(xiàng)目添加到服務(wù)器
            4. 檢查管理控制臺,確保 SCA 模塊已啟動(圖 35)。


              圖 35. 表明 SCA 模塊已啟動的控制臺消息
              圖 35. 表明 SCA 模塊已啟動的控制臺消息
            5. 要使用同一 WebSphere Integration Developer 單元測試功能來測試該組件,請按照前面所執(zhí)行的操作,再次右鍵單擊該組件,然后選擇 Test Component(圖 36)。


              圖 36. 測試 SCA 組件
              圖 36. 測試 SCA 組件
            6. 再次說明,請刪除模擬器,以使測試能夠流經(jīng) SCA 組件(圖 37)。


              圖 37. 刪除模擬器
              圖 37. 刪除模擬器
            7. 鍵入輸入?yún)?shù),如圖 38 所示。


              圖 38. 數(shù)據(jù)參數(shù)
              圖 38. 數(shù)據(jù)參數(shù)
            8. 選擇 WebSphere Process Server V6.0 作為部署位置(圖 39)。


              圖 39. 選擇部署位置
              圖 39. 選擇部署位置
            9. 檢查測試結(jié)果。

            作為自我練習(xí),請更改組件以進(jìn)行數(shù)據(jù)庫更新,然后試驗(yàn)事務(wù)屬性。您也可以在管理控制臺中使調(diào)用異步化以及檢查基礎(chǔ) Service Integration Bus 配置。







            結(jié)束語

            本文介紹了使用 WebSphere Integration Developer 組裝服務(wù)組件體系結(jié)構(gòu)組件的上下文中的引用和連線。這一系列的下一篇文章將討論導(dǎo)入和導(dǎo)出,以便您能夠集成 SCA 模塊。該系列以后的文章還將介紹更復(fù)雜的組件以及與非 SCA 組件相集成。







            致謝

            作者真誠感謝 Eric Herness、Keys Botzum 和 Paul Ilechko 對本文的審閱。








            下載

            名字 大小 下載方法
            CreditApprovalPart2.zip 23 KB ?FTP|HTTP

            posted on 2006-04-17 04:18 wsdfsdf 閱讀(284) 評論(0)  編輯 收藏 引用 所屬分類: 技術(shù)文章

            一本色道久久88加勒比—综合| 亚洲国产精品成人久久蜜臀| 色综合久久久久久久久五月| 久久精品国产亚洲av麻豆色欲| 97精品伊人久久大香线蕉app| 久久99国产精品久久99果冻传媒| 久久精品国产亚洲5555| 久久只有这精品99| 丁香五月综合久久激情| 伊色综合久久之综合久久| 久久99国产精品久久| 久久久久久精品无码人妻| 九九精品99久久久香蕉| 亚洲国产综合久久天堂| 国产69精品久久久久777| 国产精品99久久久精品无码| 国产精品久久久久久久| 久久久久se色偷偷亚洲精品av| 青草影院天堂男人久久| 色综合久久无码中文字幕| 中文精品99久久国产| 国产精品成人99久久久久91gav| 少妇人妻88久久中文字幕| 婷婷久久综合九色综合绿巨人| 久久久精品午夜免费不卡| 亚洲中文久久精品无码ww16| 亚洲性久久久影院| 久久受www免费人成_看片中文| 国产午夜精品理论片久久| 精品无码久久久久久尤物| 伊人久久大香线焦AV综合影院| 性做久久久久久免费观看| 欧美一级久久久久久久大| 久久久噜噜噜久久中文字幕色伊伊| 嫩草影院久久99| 日本久久久精品中文字幕| 青青草原1769久久免费播放| 国产精品国色综合久久| 国产成人精品久久二区二区 | 狠狠精品干练久久久无码中文字幕| 国产精品久久久久国产A级|