Sun Java System Application Server Enterprise Edition 8.1 2005Q2 管理指南

第 2 章 部署應用程式

本章說明如何在 Application Server 上部署 (安裝) J2EE 應用程式。它包含以下小節:

關於部署

部署生命週期

安裝 Application Server 並啟動網域之後,即可部署 (安裝) J2EE 應用程式和模組。在部署期間和變更應用程式時,應用程式或模組可能會經過以下階段:

  1. 初始部署

    部署應用程式或模組之前,請啟動網域。

    將應用程式或模組部署 (安裝) 到特定的獨立伺服器實例或叢集。由於應用程式和模組封裝在歸檔檔案中,因此在部署期間應指定歸檔檔案名稱。預設為部署到預設伺服器實例 server

    如果部署到伺服器實例或叢集,則應用程式或模組將存在於網域的中央儲存庫中,並由部署到的所有叢集或伺服器實例做為目標參照。

    您還可以使用 asadmin deploy 指令 (而非 管理主控台) 部署到網域。如果將應用程式或模組僅部署到網域,則應用程式或模組將存在於網域的中央儲存庫中,但要在增加參照之後才會有伺服器實例或叢集參照該應用程式或模組 (如部署生命週期中所述)。

    部署是動態的:部署應用程式或模組後,無需重新啟動伺服器實例即可使用應用程式。如果重新啟動了伺服器實例,所有已部署的應用程式和模組仍將處於部署狀態並且可用。

  2. 啟用或停用

    依預設,將啟用已部署的應用程式或模組,這表示如果應用程式或模組已部署到可存取的伺服器實例或叢集,則可以執行該應用程式或模組並且可由用戶端對其進行存取。若要防止存取,請停用應用程式或模組。在部署之後,已停用的應用程式或模組並未從網域中解除安裝,而且可以輕鬆地將其啟用。

  3. 新增或刪除已部署應用程式或模組的目標

    部署後,應用程式或模組將存在於中央儲存庫中,並可由多個伺服器實例和/或叢集參照。最初,做為目標部署到的伺服器實例或叢集將參考應用程式或模組。

    在部署應用程式或模組之後,若要變更參照應用程式或模組的伺服器實例和叢集,請使用 管理主控台 變更應用程式或模組的目標,或使用 asadmin 工具變更應用程式參照。由於應用程式本身儲存在中央儲存庫中,因此新增或刪除目標將新增或刪除不同目標上同一版本的應用程式。但是,可以在一個目標上啟用而在另一個目標上停用部署到多個目標的應用程式,因此即使應用程式被一個目標參考,也只有在該目標上啟用它時使用者才能對其進行使用。

  4. 重新部署

    若要替代已部署的應用程式或模組,請將其重新部署。重新部署將自動取消部署之前已部署的應用程式或模組 ,並代之以新應用程式或模組。

    當透過 管理主控台 重新部署時,重新部署的應用程式或模組將部署到網域中,並且所有參照該應用程式或模組的獨立或叢集伺服器實例將自動接收新的版本 (如果已啟用動態重新配置)。如果使用 asadmin deploy 指令來重新部署,請將 domain 指定為目標。

    對於生產環境,請使用捲動升級 (升級應用程式而不中斷服務)。如需更多資訊,請參閱「關於滾動升級。」

  5. 取消部署

    若要解除安裝應用程式或模組,請取消部署應用程式或模組。

J2EE 歸檔檔案的類型

軟體供應商將應用程式或模組封裝在歸檔檔案中。若要部署應用程式或模組,請指定歸檔檔案名稱。歸檔檔案的內容和結構是按照 J2EE 平台的規格定義的。J2EE 歸檔檔案的類型有以下幾種:

軟體供應商可以將應用程式組譯為單一 EAR 檔案或多個獨立的 WAR 檔案、EJB JAR 檔案和應用程式用戶端 JAR 檔案。在管理工具中,用於所有類型檔案的部署頁面和指令都是類似的。

命名慣例

在給定網域中,已部署的應用程式名稱和模組名稱必須是專屬名稱。

在一個應用程式中,不同類型的模組可以具有相同的名稱。部署應用程式時,將使用 _jar_war_rar 後綴來命名儲存個別模組的目錄。一個應用程式內,類型相同的模組必須具有專屬名稱。此外,在一個應用程式內,資料庫綱目檔的名稱必須是專屬名稱。

建議將類似於 Java 套裝軟體的命名機制用於在 ejb-jar.xml 檔案的 <module-name> 部分中找到的模組檔案名稱、EAR 檔案名稱、模組名稱,以及在 ejb-jar.xml 檔案的 <ejb-name> 部分找到的 EJB 名稱。使用這種類似於套裝軟體的命名機制可以確保不會發生名稱衝突。該命名慣例的優勢不僅適用於 Application Server,也適用於其他 J2EE Application Server。

EJB 元件的 JNDI 查詢名稱也必須是專屬名稱。建立連續的命名慣例可能會非常有用。例如,將應用程式名稱和模組名稱附加到 EJB 名稱中是保證名稱為專屬名稱的方式。在這種情況下,mycompany.pkging.pkgingEJB.MyEJB 即為模組 pkgingEJB.jar 內 EJB 的 JNDI 名稱,該模組封裝於應用程式 pkging.ear 中。

請確定該套裝軟體和檔案的名稱不含有空格或作業系統不支援的非法字元。

有關部署應用程式的 管理主控台 作業

Procedure部署企業應用程式

企業應用程式封裝於 EAR 檔案中,EAR 檔案是包含任意 J2EE 獨立模組 (例如 WAR 檔案和 EJB JAR 檔案) 的一種歸檔檔案。

  1. 在樹形元件中,展開 [應用程式] 節點。

  2. 選取 [企業應用程式] 節點。

  3. 在 [企業應用程式] 頁面中,按一下 [部署]。

  4. 在 [部署] 頁面中,指定要部署的 EAR 檔案的位置。

    伺服器是執行應用程式伺服器和網域管理伺服器的主機。用戶端機器是可以用於透過瀏覽器來檢視 管理主控台 的主機。

    • 當檔案常駐於用戶端機器上或可從用戶端機器存取時,按一下單選按鈕可以指定要上傳到 Application Server 的套裝軟體檔案。

      按一下 [瀏覽] 以找到檔案,或鍵入檔案的完整路徑。

    • 如果檔案位於伺服器上,或者要從展開的目錄部署未封裝的應用程式,則按一下單選按鈕以指定必須可以從伺服器上存取的套裝軟體檔案或目錄路徑。

      鍵入檔案或目錄的完整路徑名稱。從展開的目錄部署適用於進階開發者,但不建議在生產環境下進行此操作。

  5. 按 [下一步],以顯示 [部署企業應用程式] 頁面。

  6. 在 [部署企業應用程式] 頁面中,請指定應用程式的設定。

    1. 在 [應用程式名稱] 欄位中,既可以保留預設名稱 (即檔案名稱的字首),也可以鍵入其他名稱。

      如果您選擇上傳檔案,則會顯示預設名稱。應用程式名稱必須是一專屬名稱。

    2. 若要在部署之後停用應用程式以使其不可用,請選取 [已停用] 單選按鈕。

      依預設,部署應用程式之後即可使用該應用程式。

    3. 如果已部署應用程式,請選取 [重新部署] 核取方塊以對其進行重新部署;否則將顯示錯誤。

      您也可以選擇其他應用程式名稱,並以新名稱對其進行部署。

    4. 若要在部署之前檢驗檔案的結構和內容,請選取 [檢驗器] 核取方塊。

      大型應用程式的檢驗會很費時。如果懷疑檔案已毀壞或為不可攜式,請檢驗檔案。

    5. 若要預編譯 JSP 頁面,請選取 [JSP] 核取方塊。

      如果未選取此核取方塊,則首次存取 JSP 頁面時會在執行階段編譯這些頁面。由於編譯通常很費時,因此在生產環境中請選取此核取方塊。

    6. 選擇高可用性設定。

      若要啟用應用程式的高可用性,請選取 [可用性] 核取方塊。如果啟用了應用程式的可用性,則必須也在所有更高層級 (指配置和 Web 容器或 EJB 容器) 啟用可用性。

    7. 選擇要將應用程式部署到的目標。

      從可用目標的清單中選擇目標,並按一下 [新增]。目標可以是叢集或獨立伺服器實例。如果不選取目標,則該應用程式將部署到預設伺服器實例 server

      如果您要重新部署,請勿選取目標。此時您所作的任何選取都將被忽略。參考已部署的應用程式的所有目標叢集或獨立伺服器實例都將自動參考新的、重新部署的應用程式 (如果已啟用叢集或獨立實例的動態重新配置)。如需有關如何在不中斷服務的情況下重新部署應用程式的更多資訊,請參閱「升級應用程式。」

    8. 選擇是否產生 RMI 存根。

      如果選擇產生 RMI 存根,則會產生靜態 RMI-IIOP 存根並將其儲存到用戶端 JAR 檔案。

  7. 按一下 [確定] 以部署應用程式。

等效的 asadmin 指令

deploy

Procedure編輯已部署的企業應用程式

  1. 在樹形元件中,展開 [應用程式] 節點。

  2. 展開 [企業應用程式] 節點。

  3. 選取已部署的應用程式的節點。

  4. 在 [企業應用程式] 頁面中,變更描述。

  5. 在企業版中,啟用或停用高可用性。

    如果啟用了應用程式的可用性,則必須也在所有更高層級 (指配置和 Web 容器或 EJB 容器) 啟用可用性。

Procedure部署 Web 應用程式

Web 應用程式封裝於 WAR 檔案中,WAR 檔案是包含元件 (例如 servlet 和 JSP 檔案) 的一種歸檔檔案。

  1. 在樹形元件中,展開 [應用程式] 節點。

  2. 選取 [Web 應用程式] 節點。

  3. 在 [Web 應用程式] 頁面中,按一下 [部署]。

  4. 在 [部署] 頁面中,指定要部署的 WAR 檔案的位置。

    伺服器是執行應用程式伺服器和網域管理伺服器的主機。用戶端機器是可以用於透過瀏覽器來檢視 管理主控台 的主機。

    • 當檔案常駐於用戶端機器上或可從用戶端機器存取時,按一下單選按鈕可以指定要上傳到 Application Server 的套裝軟體檔案。

      按一下 [瀏覽] 以找到檔案,或鍵入檔案的完整路徑。

    • 如果檔案位於伺服器上,或者要從展開的目錄部署未封裝的應用程式,則按一下單選按鈕以指定必須可以從伺服器上存取的套裝軟體檔案或目錄路徑。

      鍵入檔案或目錄的完整路徑名稱。從展開的目錄部署適用於進階開發者,但不建議在生產環境下進行此操作。

  5. 按一下 [下一步] 以顯示 [部署 Web 應用程式] 頁面。

  6. 在 [部署 Web 應用程式] 頁面中,請指定應用程式的設定。

    1. 在 [應用程式名稱] 欄位中,既可以保留預設名稱 (即檔案名稱的字首),也可以鍵入其他名稱。

      如果您選擇上傳檔案,則會顯示預設名稱。應用程式名稱必須是一專屬名稱。

    2. 在 [環境根] 欄位中,輸入識別 Web 應用程式的字串。

      在 Web 應用程式的 URL 中,環境根目錄要緊跟連接埠號 (http://host:port/context-root/...)。確定環境根以正斜線開頭,例如:/hello

    3. 若要在部署之後停用應用程式以使其不可用,請選取 [已停用] 單選按鈕。

      依預設,部署應用程式之後即可使用該應用程式。

    4. 如果已部署應用程式,請選取 [重新部署] 核取方塊以對其進行重新部署;否則將顯示錯誤。

      您也可以選擇其他應用程式名稱,並以新名稱對其進行部署。

    5. 若要在部署之前檢驗檔案的結構和內容,請選取 [檢驗器] 核取方塊。

      大型應用程式的檢驗通常會很費時。如果懷疑檔案已毀壞或為不可攜式,請檢驗檔案。

    6. 若要預編譯 JSP 頁面,請選取 [JSP] 核取方塊。

      如果未選取此核取方塊,則首次存取 JSP 頁面時會在執行階段編譯這些頁面。由於編譯通常很費時,因此在生產環境中請選取此核取方塊。

    7. 選擇高可用性設定。

      若要啟用應用程式的高可用性,請選取 [可用性] 核取方塊。如果啟用了應用程式的可用性,則必須也在所有更高層級 (指配置和 Web 容器或 EJB 容器) 啟用可用性。

    8. 選擇要將應用程式部署到的目標。

      從可用目標的清單中選擇目標,並按一下 [新增]。目標可以是叢集或獨立伺服器實例。如果不選取目標,則該應用程式將部署到預設伺服器實例 server

      如果您要重新部署,請勿選取目標。此時您所作的任何選取都將被忽略。參考已部署的應用程式的所有目標叢集或獨立伺服器實例都將自動參考新的、重新部署的應用程式 (如果已啟用叢集或獨立實例的動態重新配置)。如需有關如何在不中斷服務的情況下重新部署應用程式的更多資訊,請參閱「關於滾動升級。」

    9. 選擇是否產生 RMI 存根。

      如果選擇產生 RMI 存根,則會產生靜態 RMI-IIOP 存根並將其儲存到用戶端 JAR 檔案。

  7. 按一下 [確定] 以部署應用程式。

等效的 asadmin 指令

deploy

Procedure啟動已部署的 Web 應用程式

部署應用程式之後,您可以從 管理主控台 啟動該應用程式。伺服器和 HTTP 偵聽程式必須正在執行,應用程式才能啟動。

  1. 在樹形元件中,展開 [應用程式] 節點。

  2. 按一下 [Web 應用程式]。

  3. 按一下 Web 應用程式的 [啟動] 連結。

  4. 在 [Web 應用程式連結] 頁面中按一下連結以啟動應用程式。

Procedure部署 EJB 模組

EJB 模組也稱為 EJB JAR 檔案,它包含企業 Bean。

  1. 在樹形元件中,展開 [應用程式] 節點。

  2. 選取 [EJB 模組] 節點。

  3. 在 [EJB 模組] 頁面中,按一下 [部署]。

  4. 在 [部署] 頁面中,指定要部署的 JAR 檔案的位置。

    伺服器是執行應用程式伺服器和網域管理伺服器的主機。用戶端機器是可以用於透過瀏覽器來檢視 管理主控台 的主機。

    • 當檔案常駐於用戶端機器上或可從用戶端機器存取時,按一下單選按鈕可以指定要上傳到 Application Server 的套裝軟體檔案。

      按一下 [瀏覽] 以找到檔案,或鍵入檔案的完整路徑。

    • 如果檔案位於伺服器上,或者要從展開的目錄部署未封裝的應用程式,則按一下單選按鈕以指定必須可以從伺服器上存取的套裝軟體檔案或目錄路徑。

      鍵入檔案或目錄的完整路徑名稱。從展開的目錄部署適用於進階開發者,但不建議在生產環境下進行此操作。

  5. 按 [下一步] 以顯示 [部署 EJB 模組] 頁面。

  6. 在 [部署 EJB 模組] 頁面中,請指定模組的設定。

    1. 在 [應用程式名稱] 欄位中,既可以保留預設名稱 (即檔案名稱的字首),也可以鍵入其他名稱。

      如果您選擇上傳檔案,則會顯示預設名稱。應用程式名稱必須是一專屬名稱。

    2. 若要在部署之後停用模組以使其不可用,請選取 [已停用] 單選按鈕。

      依預設,模組部署之後即可使用。

    3. 如果已部署模組,請選取 [重新部署] 核取方塊以對其進行重新部署;否則將顯示錯誤。

      您也可以選擇其他應用程式名稱,並以新名稱對其進行部署。

    4. 若要在部署之前檢驗檔案的結構和內容,請選取 [檢驗器] 核取方塊。

      大型應用程式的檢驗會很費時。如果懷疑檔案已毀壞或為不可攜式,請檢驗檔案。

    5. 選擇高可用性設定。

      若要啟用模組的高可用性,請選取 [可用性] 核取方塊。如果啟用了模組的可用性,則必須也在所有更高層級 (指配置和 Web 容器或 EJB 容器) 啟用可用性。

    6. 選擇要將模組部署到的目標。

      從可用目標的清單中選擇目標,並按一下 [新增]。目標可以是叢集或獨立伺服器實例。如果不選取目標,則該模組將部署到預設伺服器實例 server

      如果您要重新部署,請勿選取目標。此時您所作的任何選取都將被忽略。參考已部署的模組的所有目標叢集或獨立伺服器實例都將自動參考新的、重新部署的模組 (如果已啟用叢集或獨立實例的動態重新配置)。如需有關如何在不中斷服務的情況下重新部署模組的更多資訊,請參閱「關於滾動升級。」

    7. 選擇是否產生 RMI 存根。

      如果選擇產生 RMI 存根,則會產生靜態 RMI-IIOP 存根並將其儲存到用戶端 JAR 檔案。

  7. 按一下 [確定] 以部署模組。

等效的 asadmin 指令

deploy

Procedure部署連接器模組

連接器也稱為資源介面,它封裝於一種稱為 RAR 檔案的歸檔檔案中。

  1. 在樹形元件中,展開 [應用程式] 節點。

  2. 選取 [連接器模組] 節點。

  3. 在 [連接器模組] 頁面中,按一下 [部署]。

  4. 在 [部署] 頁面中,指定要部署的 RAR 檔案的位置。

    伺服器是執行應用程式伺服器和網域管理伺服器的主機。用戶端機器是可以用於透過瀏覽器來檢視 管理主控台 的主機。

    • 當檔案常駐於用戶端機器上或可從用戶端機器存取時,按一下單選按鈕可以指定要上傳到 Application Server 的套裝軟體檔案。

      按一下 [瀏覽] 以找到檔案,或鍵入檔案的完整路徑。

    • 如果檔案位於伺服器上,或者要從展開的目錄部署未封裝的模組,則按一下單選按鈕以指定必須可以從伺服器上存取的套裝軟體檔案或目錄路徑。

      鍵入檔案或目錄的完整路徑名稱。從展開的目錄部署適用於進階開發者,但不建議在生產環境下進行此操作。

  5. 按 [下一步] 以顯示 [部署連接器模組] 頁面。

  6. 在 [部署連接器模組] 頁面中,指定模組的設定。

    1. 在 [應用程式名稱] 欄位中,既可以保留預設名稱 (即檔案名稱的字首),也可以鍵入其他名稱。

      如果您選擇上傳檔案,則會顯示預設名稱。應用程式名稱必須是一專屬名稱。

    2. 在 [執行緒池 ID] 欄位中,為要部署的資源介面指定執行緒池。

      依預設,Application Server 處理其預設執行緒池中所有資源介面的工作請求。使用該欄位可以關聯特定使用者建立的執行緒池以處理資源介面的工作請求。

    3. 若要在部署之後停用模組以使其不可用,請選取 [已停用] 單選按鈕。

      依預設,模組部署之後即可使用。

      啟用或停用連接器模組時,您也同時啟用或停用了指向該模組的連接器資源和連線池。

    4. 如果已部署模組,請選取 [重新部署] 核取方塊以對其進行重新部署;否則將顯示錯誤。

      您也可以選擇其他應用程式名稱,並以新名稱對其進行部署。

    5. 若要在部署之前檢驗檔案的結構和內容,請選取 [檢驗器] 核取方塊。

      大型應用程式的檢驗通常會很費時。如果懷疑檔案已毀壞或為不可攜式,請檢驗檔案。

    6. 如果資源介面被指定了附加特性,將顯示這些特性。

      使用此表可以修改這些特性的預設值。

    7. 選擇要將模組部署到的目標。

      從可用目標的清單中選擇目標,並按一下 [新增]。目標可以是叢集或獨立伺服器實例。如果不選取目標,則該模組將部署到預設伺服器實例 server

      如果您要重新部署,請勿選取目標。此時您所作的任何選取都將被忽略。參考已部署的模組的所有目標叢集或獨立伺服器實例都將自動參考新的、重新部署的模組 (如果已啟用叢集或獨立實例的動態重新配置)。如需有關如何在不中斷服務的情況下重新部署模組的更多資訊,請參閱「關於滾動升級。」

  7. 按一下 [確定] 以部署模組。

等效的 asadmin 指令

deploy

Procedure建立生命週期模組

當伺服器生命週期中的一個或多個事件觸發生命週期模組時,該模組會執行作業。這些伺服器事件包含:

生命週期模組不屬於 J2EE 規格,但該模組是 Application Server 的增強功能。

  1. 在樹形元件中,展開 [應用程式] 節點。

  2. 選取 [生命週期模組] 節點。

  3. 在 [生命週期模組] 頁面中,按一下 [新建]。

  4. 在 [建立生命週期模組] 頁面中,指定以下設定:

    1. 在 [名稱] 欄位中,鍵入指定模組功能的名稱。

    2. 在 [類別名稱] 欄位中,鍵入生命週期模組之類別檔案的完全合格名稱。

    3. 如果包含生命週期的 JAR 檔案位於伺服器的類別路徑中,請將 [類別名稱] 欄位保留為空白。否則,鍵入完全合格的路徑。

      如果不指定類別路徑,則必須在 domain-dir/applications/lifecycle-module/module-name 中解壓縮類別。如果指定類別路徑,則無需其他操作。

    4. 在 [載入順序] 欄位中,鍵入大於 100 且小於作業系統的 MAXINT 值的整數。

      該整數將確定伺服器啟動時載入生命週期模組的次序。具有較小整數的模組可以更快地載入。

    5. 啟動伺服器時,伺服器將載入已部署的生命週期模組。

      依預設,如果載入失敗,伺服器仍將繼續執行啟動作業。若要在載入失敗時防止伺服器啟動,請選取 [載入失敗時] 核取方塊。

    6. 若要在部署之後停用模組以使其不可用,請選取 [已停用] 單選按鈕。

      由於在伺服器啟動時會呼叫生命週期模組,因此只有伺服器實例重新啟動後,被停用的生命週期模組才會停止作業。

    7. 選擇要將模組部署到的目標。

      從可用目標的清單中選擇目標,並按一下 [新增]。目標可以是叢集或獨立伺服器實例。如果不選取目標,則該模組將部署到預設伺服器實例 server

  5. 按一下 [確定]。

等效的 asadmin 指令

create-lifecycle-module

Procedure部署應用程式用戶端模組

應用程式用戶端模組也稱為 J2EE 應用程式用戶端 JAR 檔案,它包含用戶端的伺服器端常式。

  1. 在樹形元件中,展開 [應用程式] 節點。

  2. 選取 [應用程式用戶端模組] 節點。

  3. 在 [應用程式用戶端模組] 頁面中,按一下 [部署]。

  4. 在 [部署] 頁面中,指定要部署的 JAR 檔案的位置。

    伺服器是執行應用程式伺服器和網域管理伺服器的主機。用戶端機器是可以用於透過瀏覽器來檢視 管理主控台 的主機。

    • 當檔案常駐於用戶端機器上或可從用戶端機器存取時,按一下單選按鈕可以指定要上傳到 Application Server 的套裝軟體檔案。

      按一下 [瀏覽] 以找到檔案,或鍵入檔案的完整路徑。

    • 如果檔案位於伺服器上,或者要從展開的目錄部署未封裝的模組,則按一下單選按鈕以指定必須可以從伺服器上存取的套裝軟體檔案或目錄路徑。

      鍵入檔案或目錄的完整路徑名稱。從展開的目錄部署適用於進階開發者,但不建議在生產環境下進行此操作。

  5. 按 [下一步] 以顯示 [部署應用程式用戶端模組] 頁面。

  6. 在 [部署應用程式用戶端模組] 頁面中,請指定模組的設定。

    1. 在 [應用程式名稱] 欄位中,既可以保留預設名稱 (即檔案名稱的字首),也可以鍵入其他名稱。

      如果您選擇上傳檔案,則會顯示預設名稱。應用程式名稱必須是一專屬名稱。

    2. 如果已部署模組,請選取 [重新部署] 核取方塊以對其進行重新部署;否則將顯示錯誤。

      您也可以選擇其他應用程式名稱,並以新名稱對其進行部署。

    3. 若要在部署之前檢驗檔案的結構和內容,請選取 [檢驗器] 核取方塊。

      大型應用程式的檢驗會很費時。如果懷疑檔案已毀壞或為不可攜式,請檢驗檔案。

    4. 選擇要將模組部署到的目標。

      從可用目標的清單中選擇目標,並按一下 [新增]。目標可以是叢集或獨立伺服器實例。如果不選取目標,則該模組將部署到預設伺服器實例 server

      如果您要重新部署,請勿選取目標。此時您所作的任何選取都將被忽略。參考已部署的模組的所有目標叢集或獨立伺服器實例都將自動參考新的、重新部署的模組 (如果已啟用叢集或獨立實例的動態重新配置)。如需有關如何在不中斷服務的情況下重新部署模組的更多資訊,請參閱「關於滾動升級。」

    5. 選擇是否產生 RMI 存根。

      如果選擇產生 RMI 存根,則會產生靜態 RMI-IIOP 存根並將其儲存到用戶端 JAR 檔案。

      對於用戶端常式:

      • 通常,應用程式供應商會發行包含用戶端常式的 JAR 檔案。

      • 應用程式提供者透過指定 asadmin deploy 指令的 --retrieve 選項來取得用戶端存根。

  7. 按一下 [確定] 以部署模組。

等效的 asadmin 指令

deploy

Procedure指定用於部署的歸檔檔案

在應用程式或模組頁面上按一下 [部署],以存取 [部署] 頁面。在 [部署] 頁面中,指定封裝應用程式或模組的歸檔檔案的位置。

伺服器是執行應用程式伺服器和網域管理伺服器的主機。用戶端機器是可以用於透過瀏覽器來檢視 管理主控台 的主機。

  1. 當檔案常駐於用戶端機器上或可從用戶端機器存取時,按一下單選按鈕可以指定要上傳到 Application Server 的套裝軟體檔案。

    按一下 [瀏覽] 以找到檔案,或鍵入檔案的完整路徑。

  2. 如果檔案位於伺服器上,或者要從展開的目錄部署未封裝的應用程式,則按一下單選按鈕以指定必須可以從伺服器上存取的套裝軟體檔案或目錄路徑。

    鍵入檔案或目錄的完整路徑名稱。從展開的目錄部署適用於進階開發者,但不建議在生產環境下進行此操作。

有關列示、取消部署以及啟用應用程式的 管理主控台 作業

Procedure列示已部署的應用程式

  1. 在樹形元件中,展開 [應用程式] 節點。

  2. 展開應用程式或模組類型的節點。

    若要檢視已部署的應用程式或模組的詳細資訊,請執行以下操作之一:

    • 在樹形元件中,選取應用程式或模組的節點。

    • 在頁面中選取 [應用程式名稱] 欄中的項目。

等效的 asadmin 指令

list-components

Procedure列示子元件

企業應用程式、Web 應用程式、EJB 模組和連接器模組都包含子元件。例如,Web 應用程式可能包含一個或多個 Servlet。

  1. 在樹形元件中,展開 [應用程式] 節點。

  2. 展開要檢視其描述元的應用程式或模組類型的節點。

  3. 選取已部署的應用程式或模組的節點。

  4. 在 [應用程式或模組] 頁面中,檢視 [子元件] 表的內容。

等效的 asadmin 指令

list-sub-components

Procedure檢視已部署的應用程式的模組描述元

對於企業應用程式、Web 應用程式、EJB 模組、連接器模組和應用程式用戶端模組,您可以檢視模組部署描述元。

  1. 在樹形元件中,展開 [應用程式] 節點。

  2. 選取要檢視其描述元的應用程式或模組類型的節點。

  3. 選取已部署的應用程式或模組的節點。

  4. 選取 [描述元] 標籤。

  5. 若要查看描述元檔案的文字,請按一下檔案名稱。

    頁面將顯示檔案內容。此資訊是唯讀的。

Procedure取消部署應用程式或模組

取消部署應用程式或模組將從網域中將其解除安裝並移除所有實例對它的參考。

  1. 在樹形元件中,展開 [應用程式] 節點。

  2. 選取要取消部署的應用程式或模組的類型的節點。

  3. 在列示已部署的應用程式的表中,選取要取消部署的應用程式或模組的核取方塊。

  4. 按一下 [取消部署]。

等效的 asadmin 指令

undeploy

Procedure啟用或停用應用程式或模組

啟用已部署的應用程式或模組後,用戶端便可對其進行存取。如果將其停用,它將仍然處於部署狀態,但不能透過用戶端對其進行存取。依預設,在部署應用程式或模組時,由於依預設選取了 [在所有目標上啟用] 單選按鈕,因此將啟用該應用程式或模組。

  1. 在樹形元件中,展開 [應用程式] 節點。

  2. 展開應用程式類型的節點。

  3. 若要啟用已部署的應用程式或模組,請選取已部署的應用程式或模組旁邊的核取方塊。

    若要在單一目標上啟用應用程式,請執行以下步驟:

    1. 選取應用程式的節點。

    2. 按一下 [目標] 標籤。

    3. 選取已部署的應用程式或模組旁邊的核取方塊。

  4. 按一下 [啟用] 或 [停用]。

    這些按鈕用於在所有目標上啟用或停用應用程式。

等效的 asadmin 指令

enabledisable

Procedure管理應用程式目標

部署應用程式或模組後,可透過管理目標來管理參照該應用程式或模組的伺服器實例和叢集。

  1. 在樹形元件中,展開 [應用程式] 節點。

  2. 展開應用程式類型的節點。

  3. 選取已部署的應用程式的節點。

  4. 選取 [目標] 標籤。

  5. 若要在特定目標實例或叢集上啟用或停用應用程式,請按一下目標旁邊的核取方塊並按一下 [啟用] 或 [停用]。

  6. 若要新增或刪除應用程式的目標,則請選擇 [管理目標]。

  7. 新增或移除目標並按一下 [確定]。

    此時,已修訂的目標清單中將包含該應用程式。

等效的 asadmin 指令

create-application-refdelete-application-ref

Procedure在其他虛擬伺服器上部署

將應用程式或模組部署到目標伺服器實例或叢集之後,可以將其與其他虛擬伺服器關聯。

  1. 在已部署的應用程式或模組的 [目標] 頁面中,按一下目標旁邊的 [管理虛擬伺服器] 連結。

  2. 在可用虛擬伺服器的清單中,新增或移除虛擬伺服器目標。

  3. 按一下 [確定]。

重新部署到多個目標

如果已將應用程式部署到多個目標 (獨立伺服器實例或叢集),則可以透過兩種方式來重新部署到多個目標。使用以下方法之一可以確定參考應用程式的所有伺服器實例接收到最新版本。

開發環境

在開發環境中,只重新部署應用程式。應用程式將被重新部署到網域,並且參考它的所有目標將自動接收到新的版本 (如果已啟用目標伺服器實例的動態重新配置)。依預設,將啟用動態重新配置。如果未啟用伺服器實例的動態重新配置,將繼續使用舊版本,直至重新啟動伺服器實例。

生產環境

在生產環境中,請依循「關於滾動升級」中詳細說明的步驟執行作業。

Procedure配置動態重新載入

如果啟用了動態重新載入,伺服器將定期檢查已部署的應用程式中的變更並自動重新載入包含變更的應用程式。所做的變更將以您手動建立的 .reload 檔案的日期變更來表明。應用程式必須安裝在 domain-dir/applications/j2ee-modules module-namedomain-dir/applications/j2ee-apps/ app-name 中。

例如︰


/opt/SUNWappserver/domain/domain1/applications/j2ee-modules/webapps-simple

動態重新載入在開發環境中非常有用,因為它能快速測試程式碼變更。但在生產環境中,動態重新載入可能會使效能降低。


備註 –

動態重新載入僅適用於預設伺服器實例。


動態重新載入旨在用於開發環境。它與階段作業持續性 (一種生產環境功能) 不相容。如果啟用了動態重新載入,請勿啟用階段作業持續性。

  1. 在樹形元件中,展開 [獨立實例] 節點。

  2. 按一下 [server] (管理伺服器)。

  3. 按一下 [進階]。

  4. 在 [應用程式配置] 頁面中,配置以下項目:

    • 重新載入:使用 [已啟用] 核取方塊來啟用或停用動態重新載入。

    • 重新載入輪詢間隔:指定伺服器檢查已部署的應用程式中的變更的頻率。

    • 管理階段作業逾時:指定管理階段作業逾時且必須重新登入之前的時間。

接下來的步驟

將系統配置為使用動態重新載入之後,請為每個要動態重新載入的應用程式建立一個名為 .reload 的檔案並將其置於應用程式的目錄中。此檔案沒有任何內容。變更應用程式時,會變更此檔案的日期 (例如,使用 UNIX touch 指令),並會自動重新載入變更。

適用於開發者的部署方法

另請參閱:

Procedure使用自動部署

自動部署功能使您能夠透過將預先封裝的應用程式或模組複製到 domain-dir/autodeploy 目錄來部署該應用程式或模組。

例如,將名為 hello.war 的檔案複製到 domain-dir/autodeploy 目錄。若要取消部署應用程式,請從 autodeploy 目錄中移除 hello.war 檔案。

您也可以使用 管理主控台 或 asadmin 工具來取消部署應用程式。在這種情況下,歸檔檔案將保留。


備註 –

自動部署僅適用於預設伺服器實例。


自動部署功能旨在用於開發環境。它與階段作業持續性 (一種生產環境功能) 不相容。如果已啟用自動部署,請勿啟用階段作業持續性

  1. 在樹形元件中,展開 [獨立實例] 節點。

  2. 按一下 [server] (管理伺服器)。

  3. 按一下 [進階]。

  4. 在 [應用程式配置] 頁面中,配置以下項目:

    1. 透過選取或取消選取 [已啟用] 核取方塊來啟用或停用自動部署。

    2. 在 [自動部署輪詢間隔] 欄位中,指定伺服器檢查自動部署目錄中的應用程式檔案或模組檔案的頻率。

      變更輪詢間隔不會影響部署應用程式或模組所需的時間。

    3. 在 [自動部署目錄] 中,如果指定建立應用程式的目錄,則不必將檔案複製到預設自動部署目錄中。

      預設目錄是伺服器實例的根目錄中名為 autodeploy 的目錄。

      依預設,可使用變數自動變更多個伺服器實例的目錄。如需有關這些變數的更多資訊,請參閱設定進階網域屬性

    4. 若要在部署之前執行檢驗器,請選取 [檢驗器]。

      檢驗器將檢查檔案的結構和特性。大型應用程式的檢驗通常會很費時。

    5. 若要預編譯 [JSP] 頁面,請選取 [預編譯]。

      如果未選取此核取方塊,則首次存取 JSP 頁面時會在執行階段編譯這些頁面。由於編譯通常很費時,因此在生產環境中請選取此核取方塊。

Procedure部署目錄中未封裝的應用程式

此功能適用於進階開發者。

使用目錄部署僅部署到預設伺服器實例 (server)。您不能使用它來部署到叢集或獨立伺服器實例。

包含未封裝的應用程式或模組的目錄有時稱為展開的目錄。目錄的內容必須與對應的 J2EE 歸檔檔案內容相符。例如,如果部署某一目錄中的 Web 應用程式,則該目錄的內容必須與對應的 WAR 檔案的內容相同。如需有關必需的目錄內容的資訊,請參閱相應的規格。

您可以直接在展開的目錄中變更部署描述元檔案。

如果您的環境配置為使用動態重新載入,則還可以從目錄中動態重新載入已部署的應用程式。如需更多資訊,請參閱配置動態重新載入

  1. 在 管理主控台 中開始部署程序。請參閱部署 Web 應用程式

  2. 在 [部署] 頁面中,指定以下內容:

    1. 按一下單選按鈕以指定必須可以從伺服器上存取的套裝軟體檔案或目錄路徑。

    2. 在 [檔案或目錄] 欄位中,輸入展開的目錄的名稱。

等效的 asadmin 指令

deploydir

使用 deploytool 公用程式

適用於軟體開發者的 deploytool 公用程式可以封裝並部署 J2EE 應用程式和模組。如需有關如何使用 deploytool 的說明,請參閱「The J2EE 1.4 Tutorial」。

使用部署規劃

此功能適用於進階開發者。

部署規劃是指僅包含特定於 Application Server 的部署描述元的 JAR 檔案。有關這些部署描述元 (例如 sun-application.xml) 的說明,請參閱「Application Server Developer’s Guide」。部署規劃是「JSR 88: J2EE Application Deployment」實作的一部分。使用部署規劃可以部署不包含特定於 Application Server 的部署描述元的應用程式或模組。

若要使用部署規劃進行部署,請指定 asadmin deploy 指令的 --deploymentplan 選項。例如,以下指令將根據 mydeployplan.jar 檔案中指定的規劃來部署 myrosterapp.ear 檔案中的企業應用程式。


$ asadmin deploy --user admin ---deploymentplan mydeployplan.jar myrosterapp.ear

在企業應用程式 (EAR) 的部署規劃檔案中,sun-application.xml 檔案位於根目錄下。根據以下語法來儲存每個模組的部署描述元:module-name.sun-dd-name,其中 sun-dd-name 取決於模組類型。如果模組包含 CMP 對映檔案,則該檔案命名為 module-name.sun-cmp-mappings.xml.dbschema 檔案儲存在根層級目錄下,並用磅符號 (#) 替代每個正斜線字元 (/)。下面列示的內容顯示了企業應用程式 (EAR) 的部署規劃檔案的結構。

$ jar -tvf mydeployplan.jar
420 Thu Mar 13 15:37:48 PST 2003 sun-application.xml
370 Thu Mar 13 15:37:48 PST 2003 RosterClient.war.sun-web.xml
418 Thu Mar 13 15:37:48 PST 2003 roster-ac.jar.sun-application-client.xml
1281 Thu Mar 13 15:37:48 PST 2003 roster-ejb.jar.sun-ejb-jar.xml
2317 Thu Mar 13 15:37:48 PST 2003 team-ejb.jar.sun-ejb-jar.xml
3432 Thu Mar 13 15:37:48 PST 2003 team-ejb.jar.sun-cmp-mappings.xml
84805 Thu Mar 13 15:37:48 PST 2003 team-ejb.jar.RosterSchema.dbschema

在 Web 應用程式或模組檔案的部署規劃中,特定於 Application Server 的部署描述元位於根層級目錄下。如果獨立 EJB 模組包含 CMP Bean,則部署規劃包括位於根層級目錄的 sun-cmp-mappings.xml.dbschema 檔案。在下面列示的內容中,部署規劃介紹了 CMP Bean。

$ jar r -tvf myotherplan.jar
3603 Thu Mar 13 15:24:20 PST 2003 sun-ejb-jar.xml
3432 Thu Mar 13 15:24:20 PST 2003 sun-cmp-mappings.xml
84805 Thu Mar 13 15:24:20 PST 2003 RosterSchema.dbschema