Skip to main content

65 docs tagged with "aem"

View all tags

@ChildResource

The @ChildResource annotation is a Sling Models injector that maps child JCR nodes to Java objects. It is the

ACLs and Permissions

AEM's permission model is built on Jackrabbit Oak's access control layer. Every read,

Adobe I/O App Builder

Adobe I/O App Builder (formerly Project Firefly) is a serverless extensibility framework

Architecture

Adobe Experience Manager is built on three open-source foundations:

Building Pages

Using Core Components, the responsive grid, navigation, header and footer, building a homepage and article page, and page properties.

Client Libraries

CSS and JS management in AEM -- clientlib structure, categories, dependencies, embedding, proxy serving, and the ui.frontend module.

Client Libraries

Client libraries (clientlibs) are AEM's mechanism for managing CSS and JavaScript delivery. They provide

Component Dialogs

Touch UI dialogs with Granite/Coral -- field types, tabs, multifields, image upload, validation, and conditional visibility.

Components Overview

An AEM component is a self-contained building block that authors drag onto a page, configure via a dialog,

Content Fragments

Content Fragments are channel-neutral, structured content in AEM. Unlike page components that mix

Content Fragments & GraphQL

Content Fragment Models, creating and managing fragments, the AEM GraphQL API, persisted queries, and headless content delivery.

Coral UI

Coral UI is Adobe's web component library that powers the entire AEM Touch UI -- dialogs, the

Custom Component Guide

This guide walks through creating a custom AEM component from start to finish. Every artifact is covered:

Custom Dialog Widgets

AEM's Granite UI provides a rich set of dialog fields, but multi-site and multi-tenant projects often

Deployment

Deploying AEM projects varies significantly depending on the hosting model. AEM as a Cloud Service (AEMaaCS) relies on Cloud Manager pipelines with strict immutability rules. Adobe Managed Services (AMS) provides a middle ground with managed infrastructure but more flexibility. On-premises installations give full control but require manual orchestration and operational discipline.

Deployment & Cloud Manager

Git repo structure, Cloud Manager pipelines, environments, Rapid Development Environments, content transfer, and going to production.

Dialog Validation

AEM's Touch UI dialog framework includes a client-side validation system that lets you enforce business

Dispatcher & Caching

Dispatcher architecture, cache rules, filters, rewrites, vanity URLs, cache invalidation, and local Dispatcher SDK testing.

Experience Fragments

Experience Fragments (XFs) are reusable, self-contained content experiences that can be

Groovy Console

The AEM Groovy Console provides a web-based interface for running

Headless GraphQL

AEM provides a built-in GraphQL API that exposes Content Fragments as a

HTL Templates

The HTML Template Language in depth -- expressions, block statements, global objects, the Use API, and best practices.

HTL Templates (Sightly)

HTL (HTML Template Language), formerly known as Sightly, is AEM's server-side template language. It is the

Introduction & Setup

What AEM is, the technology stack (Sling, JCR, OSGi), AEMaaCS vs on-premise, installing the SDK, generating a project with the Maven archetype, and a project structure walkthrough.

Java Best Practices in AEM

This page collects practical Java guidelines for AEM projects. The goal is consistent, safe code that is easy to test and maintain.

Local Development Setup

This post describes the steps and software requirements you need to create and set up a working local AEM instance.

Multi-Site Manager (MSM)

The Multi-Site Manager (MSM) lets you maintain multiple websites that share common content. You create

Multi-Site Manager & i18n

Blueprints, Live Copies, rollout configurations, language copies, the translation framework, and i18n dictionaries.

OSGi Configuration

OSGi configuration is the primary mechanism for controlling the behavior of AEM services at runtime.

OSGi Fundamentals

OSGi bundles, services, the component lifecycle, the Web Console, and configuration management in AEM.

Overlays

Overlays (powered by the Sling Resource Merger) are AEM's mechanism for customising or extending

Performance

Performance in AEM spans multiple layers: content queries against the Oak repository, server-side rendering through Sling Models and HTL, caching at the Dispatcher level, and frontend delivery to the browser. Optimising only one layer while ignoring the others will leave bottlenecks on the table. This page walks through each layer with concrete techniques, code examples, and the most common pitfalls.

Render Conditions

Render Conditions control whether a Granite UI element (dialog field, tab, toolbar button, or any

Replication and Activation

Replication is the mechanism AEM uses to move content from the author environment to one or more publish instances. When an author clicks "Publish" (or "Activate") in the Sites console, the underlying replication framework serializes the affected content, transports it over HTTP/HTTPS, and deserializes it on the target publish instance. Understanding this pipeline is essential for debugging publish delays, configuring Dispatcher cache invalidation, and building custom publishing workflows.

Security Basics

Security in AEM is a multi-layered concern that spans user management, access control, request filtering,

Servlets

Sling Servlets are Java classes that handle HTTP requests in AEM. They are the standard way to build

Sling Models

Injecting JCR content into Java models -- annotations, adaptables, child resources, OSGi services, exporters, and best practices.

SPA Editor

The AEM SPA Editor enables authors to visually edit Single Page Applications (React or

Tags and Taxonomies

AEM's tagging framework provides a structured way to classify and organise content.

Templates & Policies

Editable templates, template types, structure vs initial content, component policies, allowed components, and page structure.

Testing

Testing in AEM usually combines unit tests for backend logic, integration tests for content and services, and UI tests for authoring behavior.

The JCR & Sling

The Java Content Repository, node types and properties, resource resolution, CRXDE Lite, and how Apache Sling maps URLs to content.

Touch UI (Author UI)

Being called TouchUI previously, the official name for the 'modern' / post classic Ui is 'AuthorUI'.️

Touch UI Component Dialogs

The following chapters each present a Coral XML snippet which can be copied into any /components/mycomponent/cqdialog/.content.xml file.

Workflows

AEM Workflows are automated, multi-step processes that model real-world business operations inside Adobe

Your First Component

Component anatomy in AEM -- the cq:Component node, HTL template, dialog, and Sling Model. Creating, deploying, and using a simple component.