![]() It is better to consistently use the lower level API than create a mix.ĪEM APIs provide abstractions and functionality specific to productized use cases.įor example, AEM’s PageManager and Page APIs provide abstractions for cq:Page nodes in AEM that represent web pages. ![]() Operating in the context of existing code (custom or AEM product code) which itself uses a less-preferred API, and the cost to move to the new API is unjustifiable. Required functionality is not available in a higher-level API. Well-known exceptions, as described below. Acceptable reasons to break from this rule are: This order is a general rule, meaning exceptions exist. If AEM doesn’t provide an API, then prefer Sling over JCR and OSGi. If an API is provided by AEM, prefer it over Sling, JCR, and OSGi. The general rule is to prefer the APIs/abstractions the following order: OSGi application container abstractions such as services and (OSGi) components.Data and content abstractions such as node, properties, and sessions.REST and resource-based abstractions such as resources, value maps, and HTTP requests.Product abstractions such as pages, assets, workflows, etc.This article explores the major APIs and when and why they should be used.ĪEM is built on four primary Java™ API sets. Adobe Experience Manager (AEM) is built on a rich open-source software stack that exposes many Java™ APIs for use during development.
0 Comments
Leave a Reply. |