Adobe | Perficient Digital

Adobe Changing the World through Digital Experiences

Running a Local SonarQube Server with AEM Rules

SonarQube undoubtedly is one of the top tools for code quality. And by default, it has a whole lot of rules that catch common bugs and code smells, it even reports code coverage! In this post, we’ll look at quickly setting up a local instance that devs can use to improve their code quality and […]

Read more

The Java Commons Annotations Was Removed in JDK 11

The Java Common Annotations Module java.xml.ws.annotation was deprecated in Java version 9 and was removed in java version 11. So what does this mean for your AEM 6.5 project running on JDK 11?   AEM 6.5 and JDK 11 As of AEM 6.5, JDK 11 is supported along side JDK 8. As such, Devs will […]

Read more

Log Tailer Plus: A Client-Side Log Tailer for AEM

In the past, while working on client engagements, the simple task of viewing the logs has been problematic. Without system access, analyzing AEM logs in real time on a non-local environment is almost impossible using the provided AEM tools. This is because the out of the box client-side logging with AEM is a reflection of […]

Read more

How to Add a Filter to AEM Granite Select Widget

Adobe Experience Manager’s Granite Select Widget is a simple dropdown widget that you add to dialogs and page properties to allow users to pick an option from a list. But, the list is not searchable. To add searchability, OOTB, you have to use the Autocomplete widget. This works well in AEM 6.4 but in AEM […]

Read more

Powering Imagination: Perficient Digital Heads to Magento Imagine

Magento Imagine is quickly approaching, bringing some of the biggest innovators in eCommerce to share their insights and best practices. Perficient Digital will be there at booth #311 discussing what’s next in order management and experience-driven commerce, and how our strong partnerships with Magento, Adobe, and Marketo make us the perfect partner to help organizations […]

Read more

#AdobeChat Recap: CX and Digital Transformation

There are certain things that are better together. Just like cookies taste better with a glass of milk, customer experiences are always better with digital transformation. During the most recent #AdobeChat, we discussed CX and digital transformation with special guest Brian Solis. Here are some of the highlights: What’s the problem with thinking CX and […]

Read more

Migrating AEM Content with Groovy

Migrating content into AEM is nobody’s idea if fun. Creating experiences and authoring content in the powerful AEM authoring experience is great, but identifying, classifying and mapping legacy content? Not so much. AEM’s repository structure contributes to this challenge. AEM, being based on the Java Content Repository (JCR) offers a massively more flexible content taxonomy […]

Read more

How to Export/Import Namespaces Between AEM Instances

Recently I ran into a scenario where I needed to export namespaces from one AEM instance and import them to another. I previously wrote two groovy scripts on how to do this and they work very well. However, they require the AEM Groovy Console which is hard to put into a production environment because of […]

Read more

SELinux Configuration for AEM Dispatcher

If you are like me, you hate setting up a dispatcher (and revel in the benefits of having someone else do that). One of the common problems I see is SELinux stopping the dispatcher from doing dispatcher things. I’m going to share two easy fixes I’ve found for the two most common ways SELinux becomes […]

Read more

Deploy AEM Packages with Jenkins like a Pro

You’ve probably seen the curl command shown below in many articles online. curl -u admin:admin -F file=@”name of zip file” -F name=”name of package” -F force=true -F install=true http://localhost:4505/crx/packmgr/service.jsp It allows you to upload and install a package to an AEM server, and can also be used in builds within Jenkins to deploy a package […]

Read more