Java 伺服器生命週期模組是 Java 類別,它們偵聽伺服器生命週期事件,以在發生伺服器事件 (如啟動或停止) 時執行特定作業。
伺服器支援在 Web 伺服器環境下執行的持續時間較短或較長的 Java 作業。這些作業在伺服器啟動時會自動初始化,並會在伺服器關機時收到通知。因此,現在您可以立刻得知諸如實例化 singleton 和 RMI 伺服器等作業。
以下是關於伺服器生命週期的簡要說明。
初始化 — 此階段包括讀取配置、初始化內建子系統;命名、安全性和記錄服務;以及建立 Web 容器。
啟動 — 此階段包括載入和初始化已部署的應用程式。
服務 — 伺服器已可處理服務請求。
關機 — 此階段會停止和銷毀載入的應用程式。系統正在準備關機。
終止 — 此階段會終止內建子系統和伺服器執行階段環境。此階段之後不會再有任何作業。
重新配置 — 暫態伺服器狀態,在此狀態下會動態重新配置伺服器執行緒 (而伺服器處於服務狀態)。此階段可在伺服器生命週期中出現多次。
選取配置。
從配置清單選取配置。若要檢視配置清單,請按一下 [配置] 標籤。
按一下 [Java] > [生命週期模組] 標籤。
按一下 [新增] 按鈕。
提供以下參數的值:
名稱 ─ 為新生命週期模組提供有效的唯一名稱。
已啟用 ─ 若要啟用此生命週期模組,請使用此選項。
類別名稱 ─ 完全合格的 Java 類別名稱。類別應該實作 com.sun.appserv.server.LifecycleListener 介面。如需有關使用此介面的更多資訊,請參閱「Developer's Guide」。
類別路徑 ─ 選擇性。您可以指定偵聽程式類別的類別路徑。
載入順序— 大於 100。載入生命週期事件偵聽程式的順序 (依數字順序)。建議選擇大於或等於 100 的載入順序,以避免與內部生命週期模組發生衝突。
載入失敗時 ─ 啟用此選項時,伺服器不會將偵聽程式類別丟出的異常視為嚴重異常,因此將繼續正常啟動。依預設停用。
說明 — 提供關於生命週期模組的簡短說明。
特性 — 這些特性可用來將引數傳送至 Java 生命週期模組。若要增加新的特性,請按一下 [增加特性] 按鈕,然後輸入名稱、值和說明的文字。
將從主伺服器執行緒同步呼叫各伺服器生命週期偵聽程式類別,因此必須特別謹慎,以確保偵聽程式類別不會阻斷伺服器。如果合適,偵聽程式類別會建立執行緒,但在關機/終止階段必須將其停止。
選取配置。
從配置清單選取配置。若要檢視配置清單,請按一下 [配置] 標籤。
按一下 [Java] > [生命週期模組] 標籤。
選取生命週期模組,然後按一下 [刪除生命週期模組] 按鈕。
使用 CLI
以下範例描述如何透過 com.MyLifecycleModule 類別實作,為 test 配置建立名為 myLifecycleModule 的 Java 生命週期模組。
wadm> create-lifecycle-module --user=admin --password-file=admin.pwd --host=serverhost --port=8989 --config=config1 --class=com.sun.webserver.tests.LifecycleClass LifecycleTest |
請參閱 CLI 參考create-lifecycle-module(1)。
若要列出 Java 生命週期模組,請執行以下指令:
wadm> list-lifecycle-modules --config=test |
請參閱 CLI 參考list-lifecycle-modules(1)。
若要為 Java 生命週期模組增加特性,請執行以下指令:
wadm> create-lifecycle-module-userprop --user=admin --password-file=admin.pwd --host=serverhost --port=8989 --config=config1 --module=LifecycleTest info=Testing |
請參閱 CLI 參考create-lifecycle-module-userprop(1)。
若要修改 Java 生命週期模組特性,請執行以下指令:
wadm> set-lifecycle-module-prop --user=admin --password-file=admin.pwd --host=serverhost --port=8989 --config=config1 --module=LifecycleTest class-path=/space |
請參閱 CLI 參考set-lifecycle-module-prop(1)。