Sun GlassFish Enterprise Server v3 版本說明

Sun GlassFish Enterprise Server v3 發行版本中有何新功能?

Sun GlassFish Enterprise Server v3 提供可開發及部署 Java Platform Enterprise Edition (Java EE 平台) 應用程式的伺服器,以及以 Java 技術為基礎的 Web 技術。

在此說明 Enterprise Server 的以下新功能:

Java EE 設定檔支援

Java EE 6 引入設定檔的概念。設定檔 (profile) 是針對特定開發者社群與應用程式類型的 Java EE 技術以及 API 的集合。

透過 Sun GlassFish Enterprise Server v3 的發行可執行下列設定檔:

Java EE 6 SDK 發行軟體可以透過 Java EE 6 SDK 下載頁面取得。

如需每個設定檔中的 API 清單,請參閱Java EE 6 標準

模組化設計

在 Sun GlassFish Enterprise Server v3 中,GlassFish 代碼分成幾個模組,以提供靈活性與改善的執行階段效能。模組化架構實作於 OSGi Alliance 標準之上,可以重複使用 Enterprise Server v3 模組及其他模組。

此項設計變更允許您僅使用在部署應用程式時所需的模組。執行階段僅用於使用它的應用程式,實作更新時不需要重新安裝系統。此變更將啟動時間、記憶體消耗及磁碟空間需求降到最低。

模組化設計提供了以下能力:

支援延伸 Enterprise Server

新的 Sun GlassFish Enterprise Server v3 容器系統提供者介面 (SPI) 定義了容器開發人員必須實作的介面,讓 Enterprise Server 在必要時加以呼叫。此變更讓 Enterprise Server 使用者能夠增加管理指令及圖形化附加元件,以建立自訂應用程式伺服器。

Enterprise Server 也為新模組類型 (例如 Ruby on Rails) 提供絕佳支援。

更新工具整合

更新工具現在已內嵌於 Sun GlassFish Enterprise Server v3 管理主控台中。此工具能簡化管理可用於延伸 Enterprise Server v3 功能的附加元件及相關應用程式。

管理主控台提供透過瀏覽樹存取更新工具頁面的功能。[更新工具] 頁面提供顯示以下項目的標籤:

更新工具整合於 管理主控台中使得管理員能夠輕鬆延伸 Enterprise Server 並檢視可用更新。也可以使用 updatetool 指令取得「更新工具」的獨立版本。如需更多有關「更新工具」的資訊,請參閱「Sun GlassFish Enterprise Server v3 Administration Guide 」中的「Update Tool」


備註 –

不能使用管理主控台中的「更新工具」介面更新現有元件。若要更新或移除已安裝的元件,您必須使用獨立指令行版本或 pkg 指令。


「更新工具」是透過更新中心專案來開發。管理主控台使用 Update Center 2.3 API 來顯示可用元件、版本及日期的清單。如需有關 Update Center 2.3 的資訊,請參閱 Update Center 2.3 版本說明


備註 –

「更新工具」與「升級工具」不同,後者用於將配置及部署的應用程式從較早的 Enterprise Server 版本遷移至目前版本。如需有關「升級工具」的更多資訊,請參閱「Sun GlassFish Enterprise Server v3 Upgrade Guide 」


程序檔語言支援

為了便於快速開發及部署應用程式,Sun GlassFish Enterprise Server v3 支援各種程序檔語言。程序檔語言讓您在其他不以 Java 技術為主的開發專案中也能應用 Enterprise Server。支援的程序檔語言包括以下項目:

「更新工具」中的元件支援這些程序檔語言。

Web 服務互通功能技術 (Web Services Interoperability Technologies, WSIT) 支援

Sun 與 Microsoft 密切合作,以確保訊息最佳化、可靠訊息傳送和安全性等 Web 服務企業技術具有互通性。WSIT 即是這項合作所開發的產品。WSIT 屬於 Metro 2.0 的一部分,Metro 2.0 是具有高效能的可延伸 Web 服務套裝軟體,提供與 Microsoft .NET 3.5 的互通性。Metro 2.0 包括在 Enterprise Server v3 的完整發行軟體中。

WSIT 實作多種開放式 Web 服務規格,用於支援企業功能。除了訊息最佳化、可靠訊息傳送和安全性之外,WSIT 還包含啟動和配置技術。從 Java 平台目前內建的核心 XML 支援功能開始,WSIT 使用或延伸了現有功能,同時新增了可互通 Web 服務的支援功能,其中包括︰

appclient 公用程式的增強功能

在此發行版本中,appclient 公用程式的增強功能如下:

如需更多資訊,請參閱 appclient(1M) 線上手冊。

EclipseLink 整合

Sun GlassFish Enterprise Server v3 使用 EclipseLink 作為其 Java Persistence API (JPA) 2.0 提供者。EclipseLink 同時也是 JSR 317 的參照實作。如需有關 EclipseLink 功能的最新資訊,請參閱 EclipseLink 2.0 版本說明

HTTP 服務設定移至網路服務

在 Sun GlassFish Enterprise Server v3 中,多數的 HTTP 服務設定已經移至新的「網路服務」配置中。如需更多資訊,請參閱「Sun GlassFish Enterprise Server v3 Upgrade Guide 」

管理員認證的相關變更

根據預設,在 Sun GlassFish Enterprise Server v3 中,系統不會提示輸入管理員憑證。這點與先前版本有所不同。

如果使用 ZIP 檔案安裝 Enterprise Server,當啟動管理主控台或使用 asadmin 公用程式與遠端子指令執行管理工作時,系統不會提示輸入管理憑證。

如果使用自行解壓縮檔案與圖形安裝程式安裝 Enterprise Server v3,除非在安裝期間有在 [Administration Settings] 頁中指定使用者名稱與密碼,否則系統不會提示輸入管理憑證。如果您在該頁接受預設值,則預設的管理使用者會是 admin,而密碼欄位將會留空。

如果只有一位沒有密碼的管理員使用者,則允許未經驗證的登入。如需更多有關管理員認證的資訊,請參閱「Sun GlassFish Enterprise Server v3 Administration Guide」中的「To Log In to a Domain」

在安裝 Enterprise Server 之後,可以變更管理員認證需求。如需有關使用管理主控台執行此工作與相關工作的資訊,請參閱管理主控台線上說明。如需有關使用指令行介面的資訊,請參閱「Sun GlassFish Enterprise Server v3 Administration Guide」中的「Administering Passwords」

asadmin 公用程式的相關變更

已修改 asadmin 公用程式的運作方式,以強調 asadmin 公用程式本身的選項與其子指令選項之間的區別。現在允許將 asadmin 公用程式本身的選項放置在子指令之前。然而考慮到與其他發行版本的相容性,仍然允許將 asadmin 公用程式本身的選項放置在子指令之後,但是此類語法已過時。

如需更多資訊,請參閱「Sun GlassFish Enterprise Server v3 Administration Guide」中的「Using the asadmin Utility」

檔案配置的相關變更

與先前的發行版本相比,Sun GlassFish Enterprise Server v3 中包括如下檔案配置變更:

Ant 工作與 asant 公用程式的相關變更

Sun GlassFish Enterprise Server v3 提供伺服器特定的 Ant 工作 (為此必須安裝 Ant)。發行版本中未包括 asant 公用程式。

Enterprise Server 與 Apache Ant 1.6.5 版或更高版本相容。如果未安裝 Ant,可以使用「更新工具」安裝。

如需更多有關「更新工具」的資訊,請參閱「Sun GlassFish Enterprise Server v3 Administration Guide 」中的「Update Tool」。如需更多有關 Ant 工作的資訊,請參閱「Sun GlassFish Enterprise Server v3 Application Development Guide 」中的第 3 章「Using Ant with Enterprise Server」

domain.xml 驗證的相關變更

由於 Sun GlassFish Enterprise Server v3 具有模組性和延伸性,因此無法對照靜態 DTD 檔案來驗證 domain.xml 檔案。而是改為對照原始碼中的 @Configured 附註來驗證 domain.xml 檔案。如需更多有關 domain.xml 檔案結構的資訊,請參閱「Sun GlassFish Enterprise Server v3 Domain File Format Reference 」

應用程式的相關變更

Enterprise Server v3 和 Enterprise Server v2 之間存有與應用程式相關的差異。本節將描述部分差異。

force 選項

Enterprise Server v3 中,部署的 force 選項的預設值為 false。Enterprise Server v2 中的預設值為 true。在 Enterprise Server v3 中,必須在重新部署時明確將選項設定為 true。在升級過程中不會自動設定此選項。這項變更的目的是為了避免意外覆寫現有應用程式的內容。此變更會套用至管理控制台和指令行公用程式。

asadmin redeploy 指令在 Enterprise Server v3 中也是新的指令,功能與 --force=true 相同。force 選項僅適用於 deploy 指令 (指令行介面) 以及 deploy 畫面 (主控台),而不適用於 redeploy 指令和 redeploy 畫面。

應用程式和產生的目錄配置

Enterprise Server v2 包含兩個應用程式儲存庫的子目錄:applications/j2ee-appsapplications/j2ee-modules。Enterprise Server v3 中並沒有這些子目錄 (沒有 j2ee-appsj2ee-modules 層級)。獨立模組 (例如 foo.war) 的部署在 Enterprise Server v2 中位於 applications/j2ee-modules/foo,現在在 Enterprise Server v3 中則位於 applications/foo。企業應用程式和獨立模組實質上是共用相同的名稱空間,因此不需要中間目錄層。

domain.xml application 元素

web-moduleejb-module 等先前的元素在 Enterprise Server v3 中已經棄用,以新的 application 元素取代。如需更多有關 application 元素的資訊,請參閱「Sun GlassFish Enterprise Server v3 Domain File Format Reference 」中的「application」

在升級期間,會以 domain.xml 中的新 application 元素,在新的 applications/ 位置重新部署 Enterprise Server v2 應用程式。在 Enterprise Server v3 部署的任何新應用程式都會以新的目錄結構和元素部署。

更嚴格的 JAR 可視性規則

Java EE 6 制定了比 Java EE 5 更嚴格的 JAR 可視性規則。因此,有些較舊的應用程式可能會失敗。

Java EE 6 規格 制定了嚴格的規則,規定企業歸檔 (Enterprise Archive, EAR) 檔案中有哪些 JAR 檔案可見。請特別參閱 EE.8.3.3 節。具體而言,除非應用程式用戶端 JAR 檔案的清單 Class-Path 有明確參照 EJB JAR 檔案,否則應用程式用戶端模組應無法存取任何 EJB JAR 檔案。

這與 Enterprise Server v2 中不同,在 Enterprise Server v2 中,應用程式用戶端會自動擁有 EAR 檔案中的所有 EJB JAR 檔案以及 EAR 檔案頂層的所有 JAR 檔案之存取權限。為了符合更嚴格的規格語言,Enterprise Server v3 無法自動為應用程式用戶端提供這些 JAR 檔案的存取權限。

Java EE 6 所制定的更為嚴格的新運作方式可以透過下列方式實現:

對運作方式的這項變更也會在「Sun GlassFish Enterprise Server v3 Upgrade Guide」中的第 1 章「Application Server Compatibility Issues」中討論。

應用程式用戶端 deploy --retrieve get-client-stubs 指令

在 Sun GlassFish Enterprise Server v3 中,執行 deploy --retrieveget-client-stubs 指令不再與 Enterprise Server v2 中一樣僅下載一個 JAR 檔案到本機目錄中。雖然在 Enterprise Server v3 中仍然會建立 localdir/myAppClient.jar ,而且可以用作 appclient 指令的目標,但是同時也會建立另一個目錄 localdir/myAppClient,進而包含其他檔案。

如果一般是複製一個 Enterprise Server v2 下載的 JAR 檔案,以這種方式來將應用程式用戶端元件移動到其他位置,則此方法在 Enterprise Server v3 中無效。支援的方法是使用 asadmin get-client-stubs 指令實現這一目的。如需有關此指令的資訊,請參閱 get-client-stubs(1)

但是如果仍然選擇複製,則除了複製 localdir/myAppClient.jar 檔案 (如同 Enterprise Server v2 中一樣) 以外,您還必須複製 localdir/myAppClient 目錄中的所有內容。