可持續升級

自訂框架

體系結構(功能/基礎結構/內容/應用程式)

「自訂架構」功能可協助減少不方便升級的程式碼(例如APIS)或內容(例如覆蓋)不可擴充區域的違規。

定制框架有兩個元件:API Surface​和​內容分類

API Surface

在舊版中,許AEM多API都是透過Uber Jar公開的。 其中有些API並非客戶所要使用,但是會跨套件提供支AEM援功能。 未來,Java API將標示為「公開」或「私用」,以向客戶指出哪些API在升級中可安全使用。 其他具體內容包括:

  • 標示為Public的Java API可供自訂實作組合使用和參考。

  • Public API將向後相容相容軟體包的安裝。

  • 相容性軟體包將包含相容性Uber JAR以確保向後相容性

  • 標示為Private的Java API僅供內部組合使AEM用,且不應用於自訂組合。

注意

PrivatePublic的概念不應與Java的公共和私有類概念混淆。

image2018-2-12_23-52-48

內容分類

AEM長久以來,Overlays和Sling Resource Merger的原則一直讓客戶擴充和自訂功AEM能。 為控制台和UIAEM供電的預定義功能儲存在​/libs​中。 客戶絕不得修改​/libs​下方的任何內容,但可在​/apps​下方新增其他內容,以覆蓋並延伸​/libs​中定義的功能(如需詳細資訊,請參閱使用覆蓋進行開發)。 這仍然會造成許多問AEM題,當升級為​/libs​中的內容時,可能會變更,導致覆蓋功能以非預期的方式中斷。 客戶也可AEM以透過sling:resourceSuperType的繼承來擴充元件,或直接透過sling:resourceType參考​/libs​中的元件。 類似的升級問題可能與參考和覆寫使用案例有關。

為了讓客戶更安全、更輕鬆地瞭解​/libs​的哪些區域安全使用並覆蓋​/libs​中的內容,已使用下列混音分類:

  • 公用(granite:PublicArea) -將節點定義為公用,以便其可以覆蓋、繼承( sling:resourceSuperType)或直接使用( sling:resourceType)。在/libs下標示為Public的節點可以通過添加相容性包進行安全升級。 一般而言,客戶只應使用標示為「公用」的節點。

  • 摘要(granite:AbstractArea) -將節點定義為抽象。節點可以覆蓋或繼承(sling:resourceSupertype),但不能直接使用(sling:resourceType)。

  • Final(granite:FinalArea) -將節點定義為final。分類為final的節點無法覆蓋或繼承。 最終節點可以直接通過sling:resourceType使用。 預設情況下,最終節點下的子節點被視為內部節點

  • 內部(granite:InternalArea) -將節點定義為內部。分類為內部的節點不能直接覆蓋、繼承或使用。 這些節點僅用於

  • 無注釋 -節點根據樹層次繼承分類。預設情況下, / root為Public。 父節點被分類為「內部」或「最終」,節點也被視為「內部」。

注意

這些原則僅會針對Sling搜尋路徑架構強制執行。 /libs​的其他區域(如用戶端程式庫)可標示為Internal,但仍可與標準clientlib內含項目搭配使用。 在這些情況下,客戶必須繼續遵守內部分類。

CRXDE Lite內容類型指示符

套用於CRXDE Lite的Mixin會顯示標示為INTERNAL的內容節點和樹狀結構變灰。 對於FINAL,只有圖示會變灰。 這些節點的子節點也將顯示為灰色。 這兩種情況下都會停用「覆蓋節點」功能。

公共

image2018-2-8_23-34-5

最終

image2018-2-8_23-34-56

內部

image2018-2-8_23-38-23

Content Health Check

AEM6.4會隨附健康狀況檢查,以警告客戶重疊或參考的內容使用方式與內容分類不符。

Sling/Granite Content Access Check​是新的健康狀態檢查,可監視儲存庫,以查看客戶代碼是否正在不當存取中的受保護節點AEM。

這會掃描​/apps,通常需要數秒才能完成。

要訪問此新的運行狀況檢查,您需要執行以下操作:

  1. 從「AEM主畫面」導覽至「工具>作業>健康報表」

  2. 按一下​Sling/Granite Content Access Check,如下所示:

    screen_shot_2017-12-14at55648pm

掃描完成後,將顯示警告清單,通知正被不當引用的受保護節點的最終用戶:

screenshot-2018-2-5healthreports

修正違規後,將返回綠色狀態:

screenshot-2018-2-5healthreports-violations

The health check displays information by a background services collected that hat an an overlay or resource type is used or all Sling search paths. 如果內容混音使用不當,則會報告違規。

本頁內容

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now