Explore product-specific spaces to ask questions, share insights, and learn best practices.
Als letztes aktiv
HI Team,We have a requirement :when Page got activated or deactivated we need to send the page info( path, title ,uuid) to other systems.We are writing a event handler for it. It is working as expected. But, Event handler is getting Triggered twice. Below is the code.@Slf4j@8220494( service = EventHandler.class, immediate = true,property = { EventConstants.EVENT_TOPIC + "=" + ReplicationAction.EVENT_TOPIC, })public class ReplicationEventHandler implements EventHandler {If we subscribe to org/apache/sling/event/notification/job/FINISHED or org/apache/sling/distribution/agent/package/distributedThen Event handler is not getting triggered at all. Below is the code.@Slf4j@8220494(immediate = true, service = EventHandler.class,property = { "event.topics=org/apache/sling/event/notification/job/FINISHED","event.filter=(|(distribution.type=ADD)(distribution.type=DELETE))" })public class ReplicationEventHandler implements EventHandler {OR@Slf4j @8220494(immediate = true, service = EventHa
Hi all, What do we mean by "AEM htl is a server side Language"?Is HTL code not executing on client? JSP is server side Language or client side? Thanks,Rama.
I tried to create a custom post process for AEM Correspondence management, so i used the import com.adobe.fd.ccm.api but not able to clear the maven dependency error. Can anyone please suggest which dependency do i need to add. Note: AEM 6.5.22 version i'm using,Thanks,
Hi Team, Could you please help me on GraphQL persistent queries.The use case is I want to pass some group names in query paramaters and I want to filter the CF's matching with any group name.I am using query like this query ($userGroups: [String]!) { sNewFragmentList(filter: { deliveryGroup: { _expressions: [ { values: $userGroups _operator: CONTAINS } ] } }) { items { _path title description deliveryGroup } } }And I am passing parameters as { "userGroups": "group1,group2,group3" } This query is not working at all, could anyone pls help me to check every group from the parameters list and filter only those fragments. Thanks.
Howdy folks! 🤠 Your "On-Demand Workfront CSM" @CynthiaBoon is back with another “Top 3” video! Looking for new, efficient ways to present your information in a report? Give the Shared (or Summary) Columns idea a try! We get lots of questions on how to use Text Mode to combine information into a report, so we have a step-by-step video as well as some resources below to get you started. First thing! As promised, here is the documentation article on how to get started with building a shared column. View: merge information from multiple columns in one shared column In the video, I reference some slightly different text mode than from the Experience League article (link above), so the code that I use in the demo is provided below. 📌 Pro-tip: Sometimes Text Mode doesn't copy and paste well so you may have to retype it into a reference document, but at l
Hi all, What are all the means of creating AEM OSGI Configuration?I mean configuration placeholder, not the actual configuration itself. I saw an example using code: https://www.youtube.com/watch?v=_ebHx8LyCkQ. Is it possible to create it manually using Felix console or some other means? Appreciate all your responses. Thanks,RK.
Join our experts to see how Adobe Journey Optimizer (AJO) and Adobe Experience Manager (AEM) combine to deliver real-time, scalable personalization while streamlining content delivery, reducing duplication, and ensuring consistency across email, web, and push. Whether you're on a small team or at a large enterprise, this session will show you how to boost content velocity, protect brand integrity, and personalize at scale—without overhauling your workflow. Date: 31 July 2025Time: 8:30 am PT Can’t make it? Sign up anyway and we will send you the recording afterward. We hope to see you there! REGISTER NOW!
Thank you to all who attended and participated in today's Calculated Custom Field workshop with the Adobe Workfront Customer Success team. There were so many great ideas shared in the chat, so I'll add those as replies below.If you missed the session, no worries - here is a link to the recording (expired May 2024) and a copy of the slide deck with instructions and ready-to-use formulas is attached. We discussed best practices and tips for creating custom forms and walked through 3 calculated custom field examples:Identify the date(s) of status changes - use this to understand how long a work item was in a specific status (ex: On Hold)Link to a tab on an object (ex: Link to Hours tab -- creating a clickable URL for users "Click here to log time")Calculate the number of days between Actual Start and Planned Start or Actual Completion and Planned CompletionI encourage those in attendance to share the formulas and a short description of the calculated custom fields your organization
Hi Everyone, Unlock the full potential of Adobe Experience Platform and apps at The Skill Exchange event through expert-led sessions. Save your spot and register today Join us on Wednesday, August 13, for a power-packed day of learning focused on Adobe Journey Optimizer (AJO) and Real-Time CDP, all designed to help you maximize customer impact, simplify workflows, and scale personalization. Type Title Speaker(s) Keynote Opening Keynote Klaasjan Tucker & Nimasha Jain, Adobe Real-Time CDP Balancing AI Personalization, Privacy, and Data Security Ketan Bhanushali & Lalitha Kavutharapu, Prudential Real-Time CDP Maximize Media ROI with RTCDP Collaboration Giuseppe Cagliostro, Wavemaker Journey Optimizer Calming Customer Chaos: Tackling Complex Journeys in AJO Adam Wilson, Air Miles Journey Optimizer Solving Adobe Journeys Beyond Email: Catch Errors Early Stephen Cave, World Vision & David Kangni, RiteAid More to Explore The Skill Exchange runs August 13–21, spot
I think AEM developer tool is one of the most used tools for aem developer so unavailability of such tools in eclipse market place is something annoying, adobe should take some steps to make it available there. Thanks Umesh Thakur CC @kautuk_sahni
👋 Hi Marketing Nation Community, Join us for one of Adobe’s largest digital learning events of the year! Experience Makers The Skill Exchange returns this August for its fifth consecutive year—bringing together Adobe customers, product experts, and solution strategists for two weeks of inspiring and practical sessions. Save your spot and register today Marketo Engage sessions will specifically take place on August 20, 2025. Hear from reputable Marketing Automation leaders and our Marketo Engage Champions, get inspired by their sessions on: Opening Keynote by @bamukher From MQL to AIQL: Building an AI-Powered Lifecycle Engine in Marketo Engage with @josh-17 Improving Data Categorization in Marketo Engage Using Fine-Tuned AI Models with @tyronpr Unlocking the Full Power of Design Studio for Global Marketing Operations with @corey.bayless14 Experience Makers Spotlight: Streamlining
Times change. People change. Processes change. And we must change with them. Nearly every customer that has used Workfront for more than two years realizes that what they implemented initially doesn’t match how they do things today; that what their leadership wanted years ago doesn’t align with what leadership wants today; and that the tidy, easy-to-manage system they once had has become overgrown with thousands of outdated and unused templates, reports, request queues and custom fields. In the spring of 2019, Workfront was no different. As a company, we are our oldest customer. We’ve used our work management software longer than any organization in the world. And we developed some bad habits along the way. For nearly two decades, our instance of Workfront has been the sandbox and test kitchen for hundreds of product managers, engineers, consultants and system administrators. Every one of our 1000+ employees had a plan license, giving them unfettered freedom to cre
Hi, We are working on Content Fragment Editor extension. Using onClick state argument API, When we try to log the state. selectedHtml is returning only text not in HTML format. Please give some suggestion on this if anyone faced same issue. Reference:https://developer.adobe.com/uix/docs/services/aem-cf-editor/api/rte-toolbar/
Hi, I am working with AEM 6.5, and I am attempting to run the com.adobe.granite (Repository) consistency check with the root "/" and have set "fix inconsistencies" to "false". However, the response immediately displays: (null). I also tried running it from http://localhost:4502/system/console/repositorycheck, but I don't see any errors in the response, even though I can see the number of traversed nodes. How can I intentionally corrupt a node so that I can see some results via the com.adobe.granite (Repository) consistency check as a test? Additionally, could I use it as an MBean in Java to perform a weekly repository consistency check?
Hi guys ,While building code with Oracle jdk-21.0.5 , I am getting below error for test class :-This should not happen unless you are using a third-party mock maker [ERROR] <MockitoAnnotations.initMocks(this);> Mockito Failed to release mocks Dependencies used :- <dependency> <groupId>org.junit</groupId> <artifactId>junit-bom</artifactId> <version>5.11.4</version> <type>pom</type> <scope>import</scope> </dependency> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <version&g
Hi,My requirement is to use Akamai as CDN for my AEMaaCS project.Followed this documentation from Adobe CDN in AEM as a Cloud Service | Adobe Experience Manager.Akamai we configured as per the sample vendor configurations.I created a edge key and deployed it through cdn.yaml file (attached screenshot) as a secret type environment variable. Same key we are passing as X-AEM-Edge-Key header from Akamai.1) When I try to run the curl command << curl https://publish-p<PROGRAM_ID>-e<ENV-ID>.adobeaemcloud.com -v --header "X-Forwarded-Host: example.com" --header "X-AEM-Edge-Key: <PROVIDED_EDGE_KEY>" --header "x-aem-debug: edge=true" >>the response is 302, and the X-Forwarded-Host expected value in response header is the domain, but it is returning publisher url (in 'x-aem-debug' response header).2) When I try to run the curl command << curl https://publish-p<PROGRAM_ID>-e<ENV-ID>.adobeaemcloud.com/content/example-homepage.htm
This blog series is a converted learning path that is made up of 3 sections and does not necessarily need to be reviewed in sequential order. Please use the following links to navigate to other blogs in this series. We recommend completing Section 1 and then at least one of the subsequentsections - select whichever kick-start section most closely aligns with your business objective. Overview: KPI Dashboards in the New Workfront ExperienceSection 1: Introduction to KPIsSection 2: General KPI dashboard kick-startSection 3: Marketing KPI dashboard kick-start Working with the general KPI dashboard kick-start Project managers and resource managers need a quick way to assess overall demand and productivity over time. This is just what the general KPI dashboard kick-start will help them do. As the system administrator, you can import and share the KPI dashboard kick-start in Workfront. You may be responsible for customizing and monitoring the dashboard, or yo
I implemented Vue.JS to Edge Delivery Services. You can find detailed article and source code here: https://medium.com/@btaymaz/vue-js-templates-in-aem-edge-delivery-services-a816742c1b36
Good morning team.I'm trying to retrieve the value of jcr:score for a full text search, but I'm not able to see the value using the following queryis there a way to see this value in a query?Regards.
Since there is hardly any documentation available on how to accomplish this, I would like to share a classic tutorial on how to generate a customized activity in Adobe Campaign Classic. This tutorial is available in both English and French (I will provide the French version upon request), and I hope that the instructions included will provide enough details to help you develop personalized activities with your own context. The tutorial is available for download in the attached file.
A year into our use of Workfront and we're looking at how we've set up Groups. We started with our own departments at the top level, but have had to add partner companies at that same level too.We do that when we need to differentiate teams within those companies, or give them different layout templates etc. I've checked a few other Q & A's but didn't find anything addressing this specifically. Should we, as it's early days, create a top level 'Company Name' entry for our company in Groups.We'd then have to move all our existing groups under that root item. Other companies would continue to have their own 'root' groups at this top level too. Hope that makes sense. Any thoughts welcome about whether it's worth doing now before we get too far down the line, and likely grow the number of third parties we deal with. Thanks
Hi everyone,I wanted to start a discussion around a challenge we’re running into with Adobe Target and Demandbase integration — particularly the timing conflict on the first page load, and how it impacts personalization.Our current setup:Adobe Target is implemented via Adobe Launch, loading synchronously (no flicker snippet used).Demandbase is also implemented via Launch using the OOTB extension.Both Target and Demandbase are triggered on the "Page Top" rule.We are also GDPR-compliant, and use TrustArc’s OOTB extension within Launch to manage cookie consent. So any personalization or tracking solution must respect the user’s consent state.The challenge:Because Target executes immediately on load, its call typically fires before Demandbase returns any firmographic data, making it impossible to personalize on a visitor’s first page hit. This severely limits our ability to deliver relevant content based on company-level attributes (industry, size, etc.).We’ve explored a few directions:Ser
Hi, Wondering if anyone out there has experience with cleaning up custom fields in an inherited instance. With thousands of fields and not much background on why any of them were created to begin with, it can be a bit of a hill to climb. I've started with the obvious, like fields not associated with forms, fields missing descriptions, duplicative fields, fields starting with or containing special characters, names/labels that read like run-on sentences. What other "flags" have caught your attention? What methods have you used for sorting through and organizing the data? What challenges or problems did you face and how did you overcome them? Thank you in advance!
I am currently customizing the Rich Text Editor (RTE) using App Builder.I am implementing it according to the documentation, but even after inputting the ID for the h1, it is not being removed from the tool. rte: { removeButtons: () => [ { id: "h1",// not work }, { id: "bold", //work } ], } Could the ID be incorrect? I would appreciate it if you could share any information you might have.
For years, we’ve leaned heavily and happily on AWS Lambda to stretch Marketo into other realms. A simple Lambda lets you integrate with, say, event platforms, transforming their generic outbound webhooks to valid inbound Marketo API calls. Especially cool are “loopback integrations”: a Marketo webhook calls a Lambda that swoops back in to call the Marketo API, allowing juiced-up flows of all sorts. Serverless architectures pioneered by AWS are perfect when a service doesn’t need to run hot 24/7 but must still be available and scalable 24/7, i.e. when a second of spin-up time after idling or increased load isn’t a problem.[1] But the dynamic spin-down/spin-up comes with undocumented risks. One rears its head with newer (but not older!) versions of NodeJS Lambdas. To make matters worse, you won’t see the problem when developing your Lambda offline, only when it’s really running within AWS.[2] A simple example A snippet from a Lambda that receives an inbound
Sie haben bereits einen Account? Anmelden
Noch kein Konto? Konto erstellen
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.