使用 WebSphere 連結來定義訊息驅動 Bean JNDI 名稱

訊息驅動描述子會配置訊息接聽器的目的地。 訊息目的地參照是一個邏輯名稱,用來尋找 EJB 模組(作為訊息目的地)中的 Enterprise Bean。 訊息目的地參照只存在於 J2EE 1.4 以及更新版本的構件中,例如:

如果有多個訊息目的地參照與單一訊息目的地鏈結相關聯,則會在部署期間收集 Enterprise Bean 的單一 JNDI 名稱,該 Enterprise Bean 會對映至訊息目的地鏈結,並依次對映至所有已鏈結的訊息目的地參照。 在執行時期,會將訊息目的地參照連結至目標作業環境中的管理訊息目的地。 如果訊息目的地參照和訊息驅動 Bean 都由相同的訊息目的地鏈結,則該參照和 Bean 必須具有相同的目的地 JNDI 名稱。 當這兩者具有相同名稱時,將只收集訊息驅動 Bean 的目的地 JNDI 名稱,並將其套用至對應的訊息目的地參照。 安裝應用程式時,如果部署人員選擇產生預設連結,則安裝精靈會將 JNDI 名稱指派給下列不完整的訊息目的地參照:
If a message destination reference has a <message-destination-link>, then the JNDI name is set to ejs/message-destination-linkName 否則, JNDI 名稱會設為 eis/message-destination-refName .

此規則會偵測訊息驅動 Bean 的目的地 JNDI 名稱。 自動修正會將目的地 JNDI 名稱從 weblogic-ejb-jar.xml 文件複製到 WebSphere(R ) 應用程式伺服器 綁定檔案。 但是,自動修正不會在 ejb-jar.xml 中設定 ActivationSpec JNDI 名稱或移植啟動組態屬性。

適用於 Liberty 的手動解決方案


適用於 WebSphere Traditional 的手動解決方案

應用程式開發人員可以在 EJB 3.0 和 Web 2.5 模組的 ibm-xxx-bnd.xml 檔,以及存在於 Java® Platform Enterprise Edition (Java EE) 5 之前版本中模組的 ibm-xxx-bnd.xmi 檔中,建立連結定義。 應用程式開發人員可以使用工具(例如 IBM® Rational® 開發人員工具)或使用 XML 編輯器或文字編輯器(針對 EJB 3.0 或 Web 2.5 模組),來建立檔案。 然後,開發人員會將包括連結的企業應用程式(.ear 檔),提供給應用程式組合人員或部署人員。 組合應用程式時,組合人員不會修改連結。 同樣地,將應用程式安裝到 WebSphere Application Server 支援的伺服器時,除非必須變更連結,才能順利部署應用程式,否則部署人員不會修改或置換連結,也不會產生預設連結。

如果要在 Rational Application Developer 中對 EJB 2.1 Bean 執行所需變更,請完成下列動作:
  1. 啟動組合工具 Rational Application Developer。
  2. 開啟正確的 EJB 專案。
  3. 按兩下部署描述子
  4. 按一下正確的訊息驅動 Bean。
  5. 向下捲動至「WebSphere 連結」區段。
  6. 選取 JCA 配接器勾選框,並輸入 ActivationSpec JNDI 名稱。


如果要在管理主控台中對 EJB 2.0 Bean 執行所需變更,請完成下列動作: Rational Application Developer 7.0 版不支援設定適用於 EJB 2.0 Bean 的 EJB 2.1 啟動規格。 只可以設定適用於 EJB 2.1 Bean 的 EJB 2.1 啟動規格。
  1. 將應用程式部署至 WebSphere Application Server 時,利用管理主控台來設定 MDB 的啟動規格。
  2. 從管理主控台匯出應用程式的 EAR 檔。
  3. 將部署描述子從 EAR 檔複製到專案中,以便該部署描述子具有正確的啟動規格。

在應用程式組合期間定義連結

應用程式組合人員可以定義應用程式之註釋或部署描述子中的連結。 Java EE 5 模組包含原始碼中的註釋。 為了宣告註釋,應用程式組合人員會在關鍵字之前附加 @ 字元。 Java EE 5 之前版本中模組的連結,指定於部署描述子編輯器的「WebSphere 連結」區段。 如果修改部署描述子,則可能會變更開發應用程式時建立的連結檔中之連結定義。 定義連結之後,組合人員會將應用程式提供給部署人員。 將應用程式安裝到 WebSphere Application Server 支援的伺服器時,除非必須變更連結,才能部署應用程式,否則部署人員不會修改或置換連結,也不會產生預設連結。


在應用程式安裝期間定義連結

將應用程式安裝到 WebSphere Application Server 支援的伺服器時,應用程式部署人員或伺服器管理者可以利用管理主控台來修改連結。 可以在安裝精靈頁面上指定新的連結定義。
此外,在應用程式安裝期間,部署人員或管理者可以選取產生預設連結。 如果選擇在應用程式安裝期間產生預設連結,則會指示產品使用預設值來完成應用程式中的連結。 現有連結不會變更。
限制:在應用程式安裝期間,無法定義或置換應用程式用戶端的連結。 您必須在組合期間定義應用程式用戶端模組的連結,並將連結儲存在連結檔中。


在配置應用程式安裝架構期間定義連結

將應用程式安裝到 WebSphere Application Server 支援的伺服器之後,應用程式部署人員或伺服器管理者可以透過變更管理主控台頁面(例如,從企業應用程式設定頁面存取的那些頁面)中的值,來修改連結。