DS Annotations – Sling Filter

Sling supports filter processing by applying filter chains to the requests before actually dispatching to the servlet or script for processing. They can be used to call a servlet, to redirect to another page, to authenticate request, preprocessing, post-processing of mark up, logging, measuring, decoration or adding/removing request parameters. Filters to be used in such … Continue reading DS Annotations – Sling Filter


Manage access to links in Global navigation panel / Tools Menu

We often have to tighten the link access in AEM to limit user access to only few links, like only Sites, Experience fragments. For AEM 6.3 touch UI, if you wish to revoke access on a link in Global Navigation Panel, you will have to follow 2 steps: Revoke access on the icon that displays … Continue reading Manage access to links in Global navigation panel / Tools Menu

Customizing AEM Toolbar

Adding new action to an AEM Assets Toolbar consists of 2 steps: Configure the new action for the toolbar Add a client library to execute some operation on clicking the action. In the following example, we are adding ability to publish and unpublish assets from the Collection view. Step 1: Resolving the location of toolbar … Continue reading Customizing AEM Toolbar

cURL execution from Java program

cURL is a tool to transfer data from or to a server, using one of the supported protocols (DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNETand TFTP). The command is designed to work without user interaction. With AEM, you can use cURL commands to modify repository, download json, access OSGi information etc. Snippet to download a json … Continue reading cURL execution from Java program

Connecting AEM from remote AEM instance (via JCR API)

The best way to allow communication between two AEM instance is by: Exposing a service from the AEM instance which acts a source of information  (say Source-AEM) Consuming the exported service in the required remote AEM (Consumer-AEM).   In case, you have a use-case where: A Service cannot be exposed via source AEM A utility … Continue reading Connecting AEM from remote AEM instance (via JCR API)

DS Annotations – dependency updates

With AEM 6.2, we can use the new Declarative Service annotations. These are improvements over Felix annotations. Adding the recommendation excerpt from Apache Felix website: While the Apache Felix Maven SCR Plugin is a great tool (see below), for developing OSGi components using Declarative Services you should use the official annotations from the OSGi R6 … Continue reading DS Annotations – dependency updates