Liberty:特性管理

特性是一些功能單元,供您用來控制載入特定伺服器的執行時期環境片段。

請利用配置檔 server.xml 來宣告您想要載入的特性。 特性集含括在 <featureManager> 元素內,每個特性都含括在 <feature> 子元素內。例如:
<server>
  <featureManager>
    <feature>servlet-3.0</feature>
    <feature>localConnector-1.0</feature>
  </featureManager>
</server>

您可以在伺服器配置檔中指定任何特性。 部分特性會內含其他特性。 相同的特性也可能內含在一或多個其他特性之中。 在執行時期,特性管理程式會計算支援要求的特性集所需要的組合內容清單。

如需主要可用特性的相關資訊,請參閱 Liberty 特性。 如需適用於各項特性之限制的相關資訊,請參閱 Liberty:執行時期環境已知的問題和限制

動態變更特性配置

當您變更特性配置時,特性管理程式會重新計算所需軟體組的清單,且會停止及解除安裝不再需要的軟體組,然後安裝及啟動任何新增的軟體組。 因此,所有特性都設計成能夠妥善處理動態新增或移除的其他特性。

單態特性

當交付 Java™ EE 7 的第一組特性時,同一特性現在有兩個版本:
  • servlet-3.0
  • servlet-3.1
與其他應用程式伺服器不同的是,您可以選擇要在伺服器配置中使用這項特性的哪一個版本。servlet-3.0 保留了現有應用程式的行為,servlet-3.1 提供新建或已修改應用程式的新功能。雖然您可以挑選規格版本,但是不需要或不提供額外的配置內容,就能控制這兩個版本之間的個別差異。
Servlet 特性是單態特性,也就是說,您只能配置一個版本來用於伺服器中:servlet-3.0servlet-3.1。如果您的應用程式需要 Servlet 特性的不同版本,您必須將它們部署在不同的伺服器中。有很多其他特性會包含 Servlet 特性成為相依關係。在 WebSphere® Liberty 產品中,這些特性已更新為使用其中一個版本。這可讓您在使用 servlet-3.1 時,配置完整的特性「堆疊」,但是來自其他來源的特性不見得已更新,而能「容忍」servlet-3.1。如果要讓這些特性「容忍」servlet-3.1,請依如下所示來修改特性資訊清單:
Subsystem-Content: com.ibm.websphere.appserver.servlet-3.0; ibm.tolerates:="3.1"; type="osgi.subsystem.feature"
如果您的伺服器配置包含單態特性的多個版本,不論是透過在 server.xml 檔中直接配置,或是透過特性相依關係,該項配置會發生錯誤,且該特性不論哪一個版本都不會載入。此錯誤會導致類似如下的訊息:
[ERROR ] CWWKF0033E: 單態特性 servlet-3.1 和 servlet-3.0 不能同時載入。所配置的特性 servlet-3.1 和 servlet-3.0 含有一或多個造成衝突的特性。
如果要解決此問題,請確定所配置的特性全是指定或容忍該單態特性的相同版本。如果您確實需要特性的這兩個版本,您必須將某些應用程式移至不同的伺服器。如需容忍單態特性的相關資訊,請參閱容忍單態特性

已汰換的特性

如果特性已汰換,表示新特性或特性組合可能提供優於該汰換特性的優點。

舉例來說,可能使用更精細的特性來取代被汰換的特性,以藉由排除可能不必要的內容,來減少伺服器覆蓋區。新特性不見得能完全取代被汰換特性的功能,因此,在您決定是否變更配置之前,必須考量您的情況。汰換的特性仍維持完整支援,並且可有效用在您的配置中,但是藉由使用新特性,您可能能夠改良您的配置。

如需已汰換特性的相關資訊,請參閱 已汰換的 Liberty 特性


指示主題類型的圖示 概念主題



「時間戳記」圖示 前次更新: 2016 年 11 月 30 日
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cwlp_feat_mgmt
檔名:cwlp_feat_mgmt.html