Explore product-specific spaces to ask questions, share insights, and learn best practices.
Recently active
We are excited to announce the Adobe Experience Manager Community Member of the Year for 2024! A big congratulations to this year’s winner: @arunpatidar ! Arun has shown exceptional commitment to the Adobe Experience Manager Community, helping others with his expertise, fostering discussions, and sharing valuable feedback. His contributions have greatly enriched the community and inspired others to get involved. Your work has significantly impacted countless learners, empowering them to grow in their understanding of our products. Thanks to your efforts, new members are not only learning faster but also feel encouraged to participate more actively. As we step into FY25, we encourage Arun and all community members to keep the momentum going. Let’s work together to make the community even stronger by sharing knowledge, engaging with peers, and inspiring one another to grow. Thank you, Arun, for your incredible contributions, and congratulations on this well-deserved recognitio
We are having an issue with images flipping horizontally when adding them to a page with the Image Core Component. Also, we are unable to fix it using the "flip horizontal" option. This happens randomly and there does not seem to be any rhyme or reason to this behavior. Has anyone else had this issue? AEM On-premise version 6.5.21.0Core Component Version 2.27.0Image Component v3
Hi All,Is it possible to do string split in sightly. For example I have string x = "C-123-coursename"; I want to remove the course name and get C-123. How can i do this in sightly?Thanks,Shehjad
Introduction Adobe Customer Journey Analytics (CJA) has introduced a new dataset type: Summary data. This feature significantly enhances CJA's data model and expands its potential use cases, offering users improved capabilities for data analysis and insight generation. Summary data consists of time-series information from a summary dataset, based on a schema using the XDM Summary Metrics class. Currently, only hourly or daily time-series data are supported. By incorporating Summary data, CJA builds upon its existing foundation of Event, Lookup, and Profile datasets, creating a more comprehensive and versatile toolkit for practitioners. The introduction of Summary data unlocks exciting new possibilities for exploring and interpreting data within CJA. This powerful dataset type complements existing options by enabling users to work with pre-aggregated information, providing a high-level perspective that's particularly valuable for certain analyses. By integrating Summary data alongsid
Authors: @sanantharaman @lycos_arun @1387974 Reviewers: @huongvu @rachel_hanessia @yunyaoli The technology landscape has continuously evolved, reshaping how brands engage with their customers. One of the most exciting frontiers in this transformation is the application of Generative AI in Customer Success. Through our conversations with customers using Adobe Experience Platform, a few recurring needs became clear: Accelerating the implementation of use cases from customer acquisition to customer retention Driving greater efficiency in implementing their customer experience workflows Democratizing the expertise and access to specialized information to help marketers realize value more easily With these insights in mind, we set out on a mission to enhance customer support in Adobe Experience Platform applications- leveraging conversational AI to create a smarter, more seamless support experience. Elevating Digital Tra
Hello Everyone, I noticed that the Agile Reporting cookbook may have been lost during migration. We definitely want to keep this content circulating, so please review the link below to see some great use cases for Agile Reporting! If you have any questions or comments, be sure to let us know in the section below. While you're at it, be sure to also check out our 2021 Reporting Cookbook.
Hi, Please can anyone help me on the below issue?I have a tab in the metadata schema with a path browser with pickerMultiSelect option set to true. It works fine and allows me to select multiple paths however the value stored on the property -./jcr:content/metadata/relatedimages/pickerSrc doesn't save all selected paths but only one(1st selected). Not sure if i am missing any other properties? Also i noticed the node created with the property - pickerSrc is of type "String" and not "String[]". Should i need to declare the type of the property, if yes, please can you advice on how we can do that? I have searched many forums but ended-up with no suggestions.My configuration - <items jcr:primaryType="nt:unstructured"> <_x0031_469788468439 jcr:primaryType="nt:unstructured" sling:resourceType="granite/ui/components/foundation/form/pathbrowser" fieldLabel="Related Images" fieldDescription="Please select related images."
Hi all, 1. Let us say we have en site and es site.In es site we need language translation and some extra functionality/nodes in content.Where do we define these changes for es?Rollout configuration for es?2. Is Rollout configuration one per live copy?3. During which part of this is Language Translator integrated?4. When is this copying done? Whenever there is a change in Blue Print? Appreciate all your replies. Thanks,RK.
Huge thanks to everyone who attended today’s 1-hour webinar highlighting the latest Workfront feature enhancements coming next week in the Q1 Release. Your questions and engagement are what make these events special, so we appreciate your time and your participation! And to @lilitm, @vazgen_babayan, @jerflo, @matthewst3, and @jbarron from the Adobe Workfront Product team – thank you so much for joining, sharing your expertise, and answering the rapid fire of questions that were submitted! If you missed today's session, no worries, below are links to the recording and slide deck: Slide Deck PDF Webinar recording The Adobe Workfront First Quarter 2025 Release is scheduled for next week, January 16th. For more details and for the full list of feature enhancements, be sure to review the First Quarter 2025 release overview page. If you have additional questions about the upcoming release or if your question
I would like to create a custom RTE plugin just like paragraph formats (it will have the dropdown) we see in the RTE where upon clicking of a particular text in that custom plugin I would like to print it to the console. And for that custom plugin also I would like to set an icon. Just like this I would like to implement. Thank you.
Thank you to everyone who joined Gary Alvarado and I for "From Ideation to Activation: Optimizing Creative Processes with Workfront and AEM " at the San Francisco Skill Exchange! If you have follow-up questions/comments, please post below and I will do my best to reply. I also welcome everyone in the community to join in and share their own experiences and insights. Check out my attached presentation. Here are the key takeaways: Measure twice, cut onceGovernance, governance, governanceStakeholder involvement and buy-in is crucialPlan for post-implementation support and ongoing system maintenance
We are excited to announce the Adobe Experience Platfrom Member of the Year for 2024! A big congratulations to this year’s winner: @abhinavbalooni! Abhinav has shown exceptional commitment to the Adobe Experience Platform Community, helping others with his expertise, fostering discussions, and sharing valuable feedback. His contributions have greatly enriched the community and inspired others to get involved. Your work has significantly impacted countless learners, empowering them to grow in their understanding of our products. Thanks to your efforts, new members are not only learning faster but also feel encouraged to participate more actively. As we step into FY25, we encourage Abhinav and all community members to keep the momentum going. Let’s work together to make the community even stronger by sharing knowledge, engaging with peers, and inspiring one another to grow. Thank you, Abhinav, for your incredible contributions, and congratulations on this well-deserv
Our latest take on a UTM attribution library manages hidden fields on Marketo forms, raw HTML <form>s, and a couple of other form types. That means switching between different APIs: if( type === "marketoForms2" ) { // call form.addHiddenFields() } else if( type === "genericHTML" ) { // upsert `<input type="hidden">` and set value } else if( type === "otherLibrary" ) { // use that library’s JS API } Admittedly, the easy way is to require a type hint, like: updateHiddens( { form: obj, type: "marketoForms2" } ); Or maybe just: updateHiddens( { marketoForms2: obj } ); But those are extra work for the end user, and I was sure the library could figure out on its own, letting you do: updateHiddens( obj ); Adding more requirements to be flexible-slash-professional: must work across Window objects — that is, a Marketo form in a child IFRAME must be detected as well cannot rely on HTML attributes like class="mktoForm" or id="mktoForm_*" bec
I'm communicating with Adobe Experience Manager, Version 6.5.6.0. I'm trying to update metadata of an existing asset. Based on the API documentation I'm doing a PUT to :https://dam.url.com/api/assets/.../documents/tds/test-lab9/Coca_Cola.pdf.jsonWith this data:{"class": "asset","properties": {"unl:documentType": "TDS"}} I get feedback suggesting that the update was ok: In the UI I can login with the same account and I'm able to set the Document Type to TDS just fine: The unl prefix is correct as far as I know since it is the same one as I find in the CSV export for this field: The new metadata value is not shown in the UI when refreshing the page. Am I doing something wrong?
Reusable Fakes in AEM Unit Tests with AEM Mocksby @daniel-strmecki IntroductionHere is how we want our AEM test method to look like, we call the method under test and check the result, nothing else. Are you ready to get rid of the when().thenReturn() noise from your test methods? Read the full article that explains this example in detail. @Test @DisplayName("GIVEN an admin user, WHEN the administrator check if performed, THEN it returns true") void testAdminUser_IsAdministrator() { final boolean result = userAccessService.checkIfUserIsAdmin(context.resourceResolver()); assertTrue(result); } OverviewWhen writing unit tests in Adobe Experience Manager (AEM), developers often mock or fake classes and methods using libraries like Mockito. While effective, this approach can become repetitive and difficult to maintain as the codebase grows. A more scalable solution lies within AEM itself: leveraging OSGi services to create reusable fakes.OSGi services in AEM are inhere
By : Prachi Jain & Luc Forgeron Introduction Adobe Journey Optimizer (AJO) is a one-stop solution for managing all marketing campaigns, messages, offers and personalization automation. Through this blog, we are delving into the concepts of how and when to trigger in-app messages in your mobile application through Journey Optimizer. We are also going to explore using the in-app messaging channel to effectively engage with your audiences and direct them to key features of your application. One of the most frequently asked questions is about the differences between in-app messages and push notifications. In-app messages are inbound notifications that appear within the app while a user is actively engaged with it, and the decision to show the message is made based on app usage. Push messages are outbound notifications, meaning the decision to deliver the message to a client is based on a decision made at the server. The end user may or may
How can we keep a field or table fixed on every page in Adobe LiveCycle Designer without using a Master Page, while allowing the table to dynamically move to the next page? I want the upper fields of the content to be populated on the next page when the table breaks dynamically.
Hi, I am trying to combine multiple pdfs using the below inDoc1 (is a map of document). This inDoc1 can we doc 1 - 10 pages. doc 2 - 8 pagesdoc 3 - 6 pages. I am trying to combine these 3 document excluding the last 2 pages in each document. I tried using pages="1-penultimate-1", but i am running into exception. However pages="1-penultimate" works and I am able to exclude just the last page alone. <PDF result="outDoc.pdf"> <PDF source="inDoc1" pages="1-penultimate-1" /></PDF> Additionally, I am trying to exclude the last 2 pages for all documents in the map except the last doc. Any help on this is greatly helpful. Stacktrace: com.adobe.livecycle.assembler.client.OperationException: ALC-ASM-S00-002: Failed to execute the DDX - error messages provided.at com.adobe.livecycle.assembler.AssemblerServiceImpl.execute(AssemblerServiceImpl.java:534)at com.adobe.livecycle.assembler.AssemblerS
Universal Editor in AEM: Simplifying Content Creation Across Platforms by Chitra Madan Overview The Universal Editor is a visual editor that is part of Adobe Experience Manager (AEM) Sites. It enables authors to perform what-you-see-is-what-you-get (WYSIWYG) editing for both headless and headful experiences, providing an efficient and intuitive in-context authoring experience. It empowers marketers, authors, and developers to collaborate seamlessly in creating engaging digital experiences. Ideal Use Cases Enterprise-Level Content Management For organisations managing extensive digital properties, the Universal Editor provides scalability and efficiency. Collaboration-Intensive Teams Marketing teams and agencies requiring real-time collaboration benefit greatly from its features. Headless CMS Implementations Businesses leveraging headless CMS approaches can use the Universal Editor to maintain a consistent authoring experience across decoupled front-end
I’d like to discuss the following:- Page performance when using different grid systems for the same page.- Listing the pros and cons of each grid system.- Evaluating AEM Grid, considering it relies on a float-based system.- Whether AEM Grid is suitable for authoring while using a custom grid for publishing.
Welcome back for the first Community Lens newsletter of 2025! Check out our exciting updates below and let us know what you think. Key Takeaways [Product Preview] GenAI for your Webinars: Webinars are experiential programs that are great for distilling complex topics into a single event. However, not everyone has the time or bandwidth to consume hours of video content. The new GenAI feature for Interactive Webinars can now summarize your webinar content into bite-sized recaps, with little to no overhead! Read @asanandia's piece on how this is possible in his blog, and for a limited time, you can sign up for a product demo to see it in action. [Product Blog] More Updates for the New Email Editor: The Email Editor went live on Feb 5th! Check out some of the new features that were included as part of the official go-live, including content locking, parameterized fragments, and an integration with AEM Assets! Our PM @Sreekanth_Reddy is also reviewing and collecting blog feedback
Hey everyone, Note: main questions to address at bottom of post. This is a general question about the process for setting up DevOps CI/CD pipeline(s) via EDS. Really appreciate any help or guidance/tips on this, as I know this is a new process overall and many others may be in me and my teams shoes.Context: Our team is currently trying to optimally setup a client's project, and we want to create a smooth CI/CD system which will take into account both the development side of contributions as well as the actual content authoring side (client side) of the flow. The tooling and process we're utilizing is as such (see attached screenshot as well of our current infra thinking & layout):- Document/Content Authoring & Asset Management = Sharepoint- Version Control and Development Organization = GitHub- Deployment and CDN = AEMaaCS (we are using Edge Delivery) As for utmost safety in a project and to prevent unwanted mistakes, multiple environments should
AEM URL Shortening: Sling Mappings vs Dispatcher Rewritesby @daniel-strmecki OverviewURL shortening or mapping is a crucial aspect of modern web development, so the same is valid in Adobe Experience Manager (AEM) projects. Short and user-friendly URLs improve user experience, enhance SEO, and ensure consistency across multiple channels. AEM default URLs are not SEO optimized, as they always contain the extra "/content" path prefix, as well as usually a path to the site or market. Let's not forget the unnecessary .html suffix. Here is an example default AEM URL to a page:http://www.meticulous.digital/content/meticulous/uk/en.htmlUsually, we aim to make the URLs shorter and keep only the necessary parts, like:http://www.meticulous.digital/uk/enAEM provides two primary mechanisms for achieving URL shortening or mapping: Sling Mappings and Dispatcher Rewrites. In this article, we'll explore how to achieve the desired behavior using both approaches. We'll compare their configurations,
AEMaaCS Performance Testing with K6by @daniel-strmecki OverviewPerformance testing is usually recommended before going live or even better continuously before promoting each new release. Even though I am not an expert on the topic, I've seen many performance tests passing only because they are testing the wrong thing, not using a big enough data set, or not mimicking the real production traffic. Therefore, I've decided to share my experience in writing performance tests for AEMaaCS with a tool from Grafana called K6. K6 is an open-source tool for focusing on performance testing web applications and APIs. It is designed to help us evaluate and ensure systems' performance, scalability, and reliability by simulating user behavior and generating traffic to measure system response under stress. The first thing we might notice about K6 is that it is very easy to use. We can probably write our first test using JavaScript in just a few minutes. However, in this article, we will take a ste
AEMaaCS Caching Strategy: TTL vs Invalidationby @daniel-strmecki OverviewCaching is a critical component in the performance and scalability of web applications. For Adobe Experience Manager as a Cloud Service (AEMaaCS), understanding the nuances of caching mechanisms is essential to optimize system efficiency, author, and end-user experience. Two primary caching strategies to consider are Time-to-Live (TTL) and API-based Cache Invalidation. In AEMaaCS, caching occurs at multiple layers to ensure optimal performance and scalability. The Dispatcher acts as a caching and load-balancing mechanism. It caches responses from the AEM Publish instance, reducing load and response times. The CDN caches content closer to end users, leveraging a distributed network of servers to minimize latency. In some setups, organizations may choose to deploy their own CDN in front of the Adobe-provided Fastly CDN. This introduces a double-CDN architecture. In this article, we'll explain caching tech
Already have an account? Login
No account yet? Create an account
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.