Demo code for talk at adaptTo() 2021:
https://adapt.to/2021/en/schedule/dynamic-media-support-in-wcm-io-media-handler.html
Before you actually deploy the demo application, configure dynamic media in the AEMaaCS SDK Author instance:
- Go to Tools > Cloud Services > Dynamic Media Configuration
- Create a new configuration in the "global" folder
- Provide valid Dynamic Media credentials
To build the application run
mvn clean install
To build and deploy the application to your local AEM instance use these scripts:
build-deploy.sh
- Build and deploy to author instancebuild-deploy-publish.sh
- Build and deploy to publish instance
The first deployment may take a while until all updated OSGi bundles are installed.
After deployment you can open the sample content page in your browser:
- Author: http://localhost:4502/editor.html/content/aemdynamicmediademo/en.html
- Publish: http://localhost:4503/content/aemdynamicmediademo/en.html
You can deploy individual bundles or content packages to the local AEM instances by using:
mvn -Pfast cq:install
- Install and deploy bundle or content package to author instancemvn -Pfast,publish cq:install
- Install and deploy bundle or content package to publish instance
- Java 11
- Apache Maven 3.6.0 or higher
- AEMaaCS SDK author instance running on port 4502
- Optional: AEMaaCS SDK publish instance running on port 4503
Modules of this project:
- parent: Parent POM with dependency management for the whole project. All 3rdparty artifact versions used in the project are defined here.
- bundles/core: OSGi bundle with Java classes (e.g. Sling Models, Servlets, business logic).
- content-packages/ui.apps: AEM content package containing:
- AEM components with their scripts and dialog definitions
- HTML client libraries with JavaScript and CSS
- content-packages/complete: AEM content package containing all OSGi bundles of the application and their dependencies
- content-packages/conf-content: AEM content package with editable templates stored at
/conf
- content-packages/sample-content: AEM content package containing sample content (for development and test purposes)
- config-definition: Defines the CONGA roles and templates for this application. Also contains a
development
CONGA environment for deploying to local development instances.