共用方式為


步驟 1:使用 Oracle E-Business 配接器來建立及發佈 WCF 服務

步驟 1 of 4

完成時間: 15 分鐘

目的: 您可以使用 WCF LOB 配接器服務開發精靈,從可裝載于裝載環境中的 Oracle E-Business Suite 成品產生 WCF 服務,例如 Internet Information Services (IIS) 或 Windows Process Activation Service (WAS) 。 本主題示範如何使用精靈來產生 WCF 服務檔案。

必要條件

執行精靈之前,請先安裝下列專案:

  • Microsoft Windows Communication Foundation (WCF) BUSINESS (LOB) Adapter SDK 搭配 [ 完成 ] 選項或 [ 自訂 ] 選項 (並選擇此選項內的 [ 工具 ]) 。 這會安裝配接器服務開發精靈的 Visual Studio 範本。

  • 來自 BizTalk 配接器套件的 Microsoft BizTalk Adapter for Oracle E-Business Suite。

    如需這些必要條件的詳細資訊,請參閱 BizTalk 配接器套件安裝指南。 安裝指南通常會安裝在 < 安裝磁片磁碟機 > :\Program Files\Microsoft BizTalk 配接器套件\Documents。

注意

您也必須執行 Microsoft Office SharePoint Server 範例所提供的 create_apps_artifacts.sql 腳本,以在應用程式物件庫應用程式中建立MS_SAMPLE_EMPLOYEE介面資料表。 本教學課程會使用此介面資料表。

在 Oracle 電子商務成品上建立作業的 WCF 服務

本節提供在 MS_SAMPLE EMPLOYEE 介面資料表上建立 Select 作業的 WCF 服務的步驟。

若要在 MS_SAMPLE EMPLOYEE 介面資料表上建立選取作業的 WCF 服務

  1. 啟動 Visual Studio,然後建立專案。

  2. 在 [ 新增專案 ] 對話方塊中,從 [ 專案類型 ] 窗格中,選取 [Visual C#]。 從 [ 範本] 窗格中,選取 [WCF 配接器服務]。

    或者,從 [ 專案類型] 窗格展開 [Visual C#],然後選取 [Web]。 從 [ 範本] 窗格中,選取 [WCF 配接器服務]。

    [新增專案] 對話方塊

    注意

    如果您使用 Web 開發元件安裝Visual Studio 2013,您也可以從 [新增網站] 選項取得 WCF 配接器服務範本, ([檔案>>網站]) 。

    不過,Oracle E-Business 配接器僅支援檔案系統上建立的網站。 因此,在 [新增網站] 對話方塊中建立網站時,您必須在 [位置] 清單中按一下 [檔案系統]。

  3. 指定解決方案的名稱和位置,然後按一下 [ 確定]。 WCF 配接器服務開發精靈隨即啟動。

  4. 在 [歡迎] 頁面中按 [下一步] 。

  5. 在 [選擇作業] 頁面上,指定要連線到 Oracle E-Business Suite 的連接字串。 若要這樣做:

    1. 在 [ 選取系結 ] 清單中,按一下 [oracleEBSBinding],然後按一下 [ 設定]。

    2. 在 [ 設定配接器 ] 對話方塊中,按一下 [ 系結屬性] 索引卷 標。

      1. 在 [ 一般 ] 類別下,針對 ClientCredentialType 系結屬性,選取 [EBusiness]。

      2. OracleEBS 類別下,指定 OracleUserNameOraclePasswordOracleEBSResponsibilityName 系結屬性的適當值。 在此情況下,您必須提供 OracleUserNameOraclePassword 系結 屬性的資料庫認證。

      3. [中繼資料 ] 類別下,針對 EnableSafeTyping 系結屬性,選取 [True]。 如果您要擷取日期資料行的值,建議您在產生中繼資料時將 EnableSafeTyping 系結屬性設定為 True

    3. 按一下 [ URI 屬性] 索引 標籤,然後指定連接參數的值。 如需 Oracle E-Business 配接器連線 URI 的詳細資訊,請參閱 建立 Oracle E-Business Suite 連線 URI

    4. 按一下 [ 安全性] 索引 標籤,然後在 [ 用戶端認證類型 ] 清單中,選取 [ 使用者名稱]。 指定有效的 Oracle E-Business Suite 使用者名稱和密碼,以連線到 Oracle E-Business Suite。

    5. 按一下 [確定 ] 關閉 [設定配接器] 對話方塊,然後按一下 [ 連接]。 Visual Studio 成功建立與 Oracle E-Business Suite 的連線之後,線上狀態會顯示為 [已連線]。 您也可以在 [選擇作業] 頁面上看到正在顯示的 Oracle E-Business Suite 中繼資料。

  6. 在 [選擇作業] 頁面上的 [ 選取合約類型 ] 清單中,按一下 [ 用戶端 (輸出作業])

  7. 在 [ 選取類別] 方塊中,流覽至應用程式物件程式庫應用程式中的MS_SAMPLE_EMPLOYEE介面資料表。 如需在配接器中流覽至成品的相關資訊,請參閱 流覽、搜尋及擷取 Oracle 電子商務作業的中繼資料

  8. 在 [ 可用的類別和作業 ] 方塊中,選取 [ 選取 作業],然後按一下 [ 新增]。 [選取] 作業會新增至 [ 新增類別和作業 ] 方塊。

    新增選取作業

    注意

    您可以為每個成品新增一個以上的作業。 您也可以為不同的 Oracle E-Business Suite 成品新增作業。 例如,您可以為介面資料表新增一個作業,另一個作業用於並行程式。 此外,您可以在搜尋運算式中指定萬用字元來搜尋特定作業。 如需可搜尋作業之支援的特殊字元和節點層級的詳細資訊,請參閱 搜尋 Oracle E-Business Suite 作業

  9. 在 [選擇作業] 頁面上,按 [下一步]。

  10. 在 [設定服務和端點行為] 頁面上,指定要設定服務和端點行為的值。

    1. 在 [ 服務行為組態] 方塊中,指定下列各項的值:

      針對 屬性 指定值
      EnableMetadataExchange 將此設定為 True ,以建立中繼資料交換端點。 藉由將此設定為 True,您可以使用標準化通訊協定來提供服務中繼資料,例如 WS-Metadata Exchange (MEX) 和 HTTP/GET 要求。 預設值為 False
      IncludeExceptionDetailsinFault 將此設定為 True ,以詳細說明傳回給用戶端以進行偵錯的 SOAP 錯誤,以包含 Managed 例外狀況資訊。 預設值為 False
      名稱 服務行為組態的名稱。 在本教學課程中,輸入 customServiceBehavior
      UseServiceCertificate 指定您是否要使用 WCF 的訊息層級安全性模式。 預設值為 True。 在本教學課程中,您必須將此設定為 False

      注意

      因為我們未針對本教學課程使用服務憑證,因此您不需要提供FindValueStoreLocation、StoreNameX509FindType屬性的值。 如需憑證和相關屬性的詳細資訊,請參閱 上的 https://go.microsoft.com/fwlink/?LinkId=103771 「X509ClientCertificateCredentialsElement 屬性」。

    2. 在 [ 端點行為設定 ] 方塊中,指定下列各項的值:

      針對 屬性 指定值
      驗證類型 若要讓 Microsoft Office SharePoint Server 取用 WCF 服務,您應該將此設定為 HTTPUserNamePassword。 這可讓用戶端將使用者名稱和密碼指定為 HTTP 標頭的一部分。
      名稱 指定端點行為組態的名稱。 在本教學課程中,輸入 customEndpointBehavior
      UsernameHeader 使用者名稱標頭的名稱。 在此範例中,請指定 MyUserHeader。 For more information about HTTP headers, see "Support for Custom HTTP and SOAP Headers" at https://go.microsoft.com/fwlink/?LinkId=106692. 注意: 如果 驗證類型 設定為 HTTPUserNamePassword,您必須指定此屬性的值。 如果 [驗證類型 ] 設定為 [自動],則此屬性是選擇性的。
      PasswordHeader 密碼標頭的名稱。 在此範例中,請指定 MyPassHeader。 For more information about HTTP headers, see "Support for Custom HTTP and SOAP Headers" at https://go.microsoft.com/fwlink/?LinkId=106692. 注意: 如果 驗證類型 設定為 HTTPUserNamePassword,您必須指定此屬性的值。 如果 [驗證類型 ] 設定為 [自動],則此屬性是選擇性的。

      下圖顯示具有指定值的 [設定服務和端點行為] 頁面。

      設定服務和端點行為頁面

  11. 在 [設定服務和端點行為] 頁面上,按 [下一步]。

  12. 在 [設定服務端點系結和位址] 頁面上, [選取要設定的合約 ] 會顯示您所設定的成品 (MS_SAMPLE_EMPLOYEE) 。 所選合約方塊 底下的 [作業 ] 會顯示您在 [選擇作業] 頁面上針對成品選取的 [ 選取 作業] 作業。

  13. 在 [ 設定合約的位址和系結 ] 方塊中,指定下列的值:

    針對 屬性 指定值
    繫結組態 精靈僅支援基本 HTTP 系結。 因此,系結組態欄位會自動填入 System.ServiceModel.Configuration.BasicHttpBindingElement

    按一下省略號按鈕 (...) 變更 HTTP 系結的屬性。 若要使用安全通道,您必須一律將 Mode 屬性設定為 Transport。 精靈會將 Mode 屬性的預設值設定為 Transport

    For more information about the other bindings exposed, see "BasicHttpBindingElement Members" at https://go.microsoft.com/fwlink/?LinkId=103773.
    端點名稱 指定合約的端點名稱。

    此頁面上的其他欄位會根據您在先前頁面中指定的值自動填入。

    按一下 [套用]。

    注意

    如果您未在此頁面上指定任何值,則會接受所有合約的預設值。

    下圖顯示具有指定值的 [設定服務端點系結和位址] 頁面。

    設定服務端點系結和位址

  14. 在 [設定服務端點系結和位址] 頁面上,按 [下一步]。 [摘要] 頁面會列出 Oracle E-Business Suite 成品的樹狀結構,以及為成品選取的作業。

  15. 檢閱摘要,然後按一下 [ 完成]。

  16. 精靈會建立 WCF 服務,並將下列檔案新增至 Visual Studio 專案:

    1. .svc 檔案。 這是 WCF 服務檔案。 精靈會為每個合約產生一個檔案。

    2. Web.config 檔案。

    3. 服務程式代碼 (.cs 檔案)

修改 .cs 檔案

當您使用 Oracle E-Business 配接器從 Oracle E-Business Suite 成品建立服務,並想要從 Microsoft Office SharePoint Server 中的商務資料清單網頁元件使用它時,您應該從 WHERE 子句開始提供完整的篩選子句。 例如,如果您想要搜尋名稱為 「John」 的員工,您必須在商務資料清單網頁元件中提供下列篩選子句:

where NAME like ‘JOHN’

不過,如果您想要使用者只提供名稱做為篩選子句的輸入,而不實際提及整個篩選子句,您可以在 .cs 檔案中新增程式碼,以修改來自 Microsoft Office SharePoint Server 的商務資料清單網頁元件中的篩選子句,以 WHERE 子句格式將它傳遞至 Oracle E-Business。

例如,在本教學課程中,如果您想要使用者在 Microsoft Office SharePoint Server 的商務資料清單網頁元件中輸入員工名稱,並擷取該員工的記錄,您可以在 .cs 檔案中新增下列程式碼:

SelectResponse InterfaceTables_FND_APPS_MS_SAMPLE_EMPLOYEE.Select(SelectRequest request)
{
     request.FILTER = "where NAME like '" + request.FILTER + "'"; // The code to avoid the users from specifying the WHERE clause in the filter from Business Data List Web Part.
     return base.Channel.Select(request);
}

發佈 WCF 服務

請確定已啟用 IIS 的 SSL。 如需如何啟用 IIS SSL 的指示,請參閱 https://go.microsoft.com/fwlink/?LinkId=197170

若要發佈 WCF 服務:

  1. 以滑鼠右鍵按一下方案總管中的專案,然後按一下 [發佈]。

  2. 在 [ 發佈 Web ] 對話方塊中,指定 WCF 服務的 URL。 例如:

    https://<COMPUTER_NAME>:<PORT_NUMBER>/MS_SAMPLE_EMPLOYEE/
    

    注意

    您必須將 WCF 服務發佈至已啟用 SSL 的位置。 換句話說,[ 目標位置 ] 方塊中的值必須以 「HTTPs://」 開頭。 因為使用者認證是在 HTTP 標頭中傳遞,所以精靈會自動將配接器的系結行為設定為使用「傳輸」作為安全性模式,這表示 SSL 加密。 當然,您可以返回並編輯 web.config 檔案來變更安全性模式 > 參數的值 <,但當您在 HTTP 標頭中以純文字傳輸敏感性資訊時,使用 SSL 一律是較佳的選項。

  3. 從 [ 複製] 方塊中,按一下 [所有專案檔]。

  4. 按一下 [發佈]。

  5. 確認 WCF 服務已成功發佈。

    1. 啟動 IIS Microsoft Management Console。 按一下 [ 開始] 並指向 [ 系統管理工具],然後按一下 [ Internet Information Services (IIS) 管理員]。

    2. 流覽至您發佈服務的節點。 針對MS_SAMPLE_EMPLOYEE服務,流覽至[Internet Information Services>< 電腦名稱稱 >>網站>預設網站> ]MS_SAMPLE_EMPLOYEE

    3. 在右窗格中,以滑鼠右鍵按一下 InterfaceTables_FND_APPS_MS_SAMPLE_EMPLOYEE.svc 檔案,然後按一下 [ 流覽]。

    4. 網頁會顯示用來擷取 WSDL 的 URL。 您可能想要使用 svcutil 命令來測試中繼資料擷取。 例如,擷取MS_SAMPLE_EMPLOYEE服務的中繼資料的命令為:

      svcutil.exe https://<COMPUTER_NAME>:<PORT_NUMBER>/MS_SAMPLE_EMPLOYEE/InterfaceTables_FND_APPS_MS_SAMPLE_EMPLOYEE.svc?wsdl
      
      

後續步驟

若要建立 Oracle E-Business Suite 成品的應用程式定義檔,請使用商務資料目錄定義編輯器。 如需指示,請參閱 步驟 2:建立 Oracle E-Business Suite 成品的應用程式定義檔案。 應用程式定義檔會識別 LOB 資料的儲存位置及其儲存格式。

另請參閱

教學課程:在 SharePoint 網站上呈現 Oracle E-Business Suite 的資料