2024 New Year Resolutions
The AEM Maven
by Juan Ayala
3M ago
This morning someone said "January flew by!". Yes it did. So happy belated new year ! In 2023 I set three career resolutions for myself. I took a deep dive into AEM headless with content fragments and GraphQL. And I attended the Adobe Summit. 2 out of 3 isn't bad, so here are my 2024 resolutions. Certifications I already have a head start on this! As soon as I returned to work on January 3rd, I began to prep for the AEM Sites Architect Master AD0-E117 test. And I passed it on January 19th. The only other Adobe test that piques my interest is the AEM Cloud Service Migration Expert AD0-E136. But ..read more
Visit website
The SlingSettingsService & Run Modes in AEMaaCS
The AEM Maven
by Juan Ayala
4M ago
Recently I was working on an AEMaaCS migration. I was dealing with tons of deprecated Java APIs. One was org.apache.sling.engine.SlingSettingsService. I went straight into the commit history for the Sling Engine project. And I fished out a reference to SLING-1460. It looked simple enough. Switch to the new interface. So I began switching to the new interface, org.apache.sling.settings.SlingSettingsService. But my IDE was still screaming deprecation! I checked the source code on GitHub. It was not marked as deprecated. And if you are referencing the AEM 6.5 API, everything is fine! I was refere ..read more
Visit website
JSR-380 Bean Validation 2.0 in AEM
The AEM Maven
by Juan Ayala
6M ago
I have spent years writing and reviewing code. I have seen a lot of wheel re-invetions. I have even done a few my self But as much fun as re-inventing the wheel is, it gets tiresome. And I look for off-the-shelf solutions. For example I wrote an post on Open Feign. And how to avoid writing mountains of HTTP client code. This post is about validating user input. Something for which I have seen countless "util" classes written. This is insane, given that there is an entire implementation out there for this purpose. That is the Hibernate Validator. The reference implementation of JSR-380. Require ..read more
Visit website
Speed Up Your AEM Unit Tests
The AEM Maven
by Juan Ayala
9M ago
Back in December of 2022, I was working on an AEM 6.5 project. It was a typical project. Including the build time. Locally, I mitigated the long build by building only what was necessary. i.e. the core bundle. Or skipping the unit tests. Or using the repo tool to sync the only the changes needed. It was only on the CI/CD pipeline that I would have to wait upwards of an hour for it to complete. Then one day, an off-shore developer submitted a PR. Claiming to have improved the build time. "Popycock!" I said. Well it turns out he was right. And I was completely surprised by the issue. How could t ..read more
Visit website
Multiple AEM Sites on a Local Dispatcher
The AEM Maven
by Juan Ayala
10M ago
The dispatcher is an integral part of the AEM architecture. So important that it has made it into AEMaaCS. But it is simple and has not changed in a long time. In fact, I'm surprised it has even lasted this long. Its basic core functions are caching and filtering! Couldn't we do that with an Nginx module? Or a Traefik plugin? I'm willing to bet that in the years to come, it will get phased out in AEMaaCS. In favor of a more managed solution. What has improved is the tooling provided by Adobe. When I first started on AEM, I remember setting up Apache on my MacBook. Ewww... Then I set it up on V ..read more
Visit website
Simplify Integrations With OpenFeign in AEM
The AEM Maven
by Juan Ayala
1y ago
Sometimes when I meet someone, the question comes up "What do you do for a living." I answer "I'm an internet plumber!" I create the connections that connect back-end systems and people to the data they need. So last year when a pipe burst in my home, the plumber ran over to the hardware store. Bought some new pipes. And resolved the issue. Thats right! They ran over to the hardware store and bought some new pipes! They didn't go back to their workshop to smelt copper. Pour it into a cast. Then cut and clean to get a finished pipe. So why would I, an internet plumber, spend time and effort wri ..read more
Visit website
Adobe Summit 2023: Headless
The AEM Maven
by Juan Ayala
1y ago
Last week I had the opportunity to attend Adobe Summit 2023. Now that I've had the weekend to recuperate, and gather my thoughts, I'm ready to talk about the experience. There were tons sessions covering all sorts of Adobe solutions. There was no way to attend them all. So I will spend the next few months going back to review the sessions I attended. And the ones I wish I could have. My approach is going to be this. Instead of an overarching essay about an Adobe solution, I'm going to talk about the small tidbits. The small things I heard here or there. The small ideas that got planted in my h ..read more
Visit website
Testing Java HTTP Clients in AEM
The AEM Maven
by Juan Ayala
1y ago
As part of my job, I review a lot of code. One of the problems that I see often is that a lot of code gets written to integrate AEM with RESTful services. It is always very complex Because it has to deal with different content types. Authentication headers. And methods. And this complexity is hard to test and debug. HTTP Clients in AEM When I began working on AEM, it was on the last version of CQ5. Running on Java 1.8. And back then (if memory serves) there were 2 HTTP clients available. The native HttpURLConnection. And Apache HTTP Components 3. Today, the Apache HTTP Components has gotten up ..read more
Visit website
New Year Resolutions
The AEM Maven
by Juan Ayala
1y ago
Happy new year! A little over a year ago I started this blog. I figured it was a good way to push myself to learn new things. Share them. Improve my communication skills. And gain a little recognition. A couple of days ago I got an email from FeedSpot telling me I had made the Top 10 AEM Blogs list! Everyone in the AEM community knows these 10 blogs. So it seems like a pretty good list! Dan Klco and Jörg Hoh are the top 2 which wasn't surprising. I'm glad someone (or something ) thought my content was good enough to make this list. For 2023 I would like to keep this momentum going. Today I'll ..read more
Visit website
Localhost TLS/SSL Proxy With Docker
The AEM Maven
by Juan Ayala
1y ago
When doing local dev and testing, you may find that you need TLS (Transport Layer Security). Also known as SSL (Secure Socket Layer), it predecessor. For example if you are working with secure http cookies. Or content security policy headers. Recently I ran into this. I was trying to integrate AEM with a SAML identity provider. And the IdP would only send back the SAML assertion to a TLS protected assertion endpoint. Such as https://localhost/content/mysite/saml_login. Rather than waiting to test in a QA environment, I decided to setup TLS on my local host. And there is a plethora of ways to d ..read more
Visit website

Follow The AEM Maven on FeedSpot

Continue with Google
Continue with Apple
OR