Explore product-specific spaces to ask questions, share insights, and learn best practices.
Recently active
Is it possible to hide a component in Desktop view and still have it be visible in Tablet and Mobile view? This is a pretty rudimentary feature in other CMS's but I cannot seem to get it to work in AEM.
I want to throw error , if author is uploading pdf more than 2 mb inside dam.File type only on pdf . it should allow image and video more than 2 mb @arunpatidar @asutosh_jena_ @Kiran_Vedantam
My site has a significant number of users which are generated on login from SAML. 99% of these users do not need to be stored long term, so I've been working on a scheduler to delete the users. The users are recreated at next login, however, they're hitting a 404 error on login. Reloading the page resolves the error. This does not happen to users who have never existed on the site. Is there a difference in the creation of brand new users and previously deleted users? Do I need to delete subnodes of the user first? This error happens when users are deleted through the admin or through the scheduler. The URL is being rewritten to remove /content/site in Apache, which I do not manage. We are running 6.5.10 with MongoDB and a dispatcher. I can confirm that the dispatcher settings have "X-Forwarded-Port" in the header. I cannot at this time confirm the Apache HTTPD configuration and have not gotten access to the dispatcher log file. These are the on
Despite some recurring wishful (Christmas-wishful?) thinking on the Marketo Community, no, Marketo does not have a {{system.token}} that outputs only the current year. You have to build your own token — or rather, at least two {{my.tokens}}, one for Emails (using Velocity) and one for LPs (using Javascript). There’s code below for cutting-and-pasting, but I want to take a moment to describe the technical goal. “The current year” seems self-explanatory, but there’s a hidden question: Whose current year? Remember, the year changes over the course of 24 hours on New Year’s Day. So across Marketo email & LP contexts, you really have at least six (!) possible years: (1) the year in Marketo’s internal time zone (CST, if you don’t know)(2) the year in your company’s main time zone, as set in your Marketo instance(3) the year in the time zone of the office/group that owns an asset, if different from the company HQ time zone(4) the year in Marketo’s best-guess
Hello Everyone, I'm new to using Adobe Target and wondering if there is a way to trigger the activation of an A/B test only after a user on the site has clicked on an on-page element. The element in question is a main menu dropdown, and clicking the element reveals the dropdown menu below. The A/B test makes changes to the content of the dropdown, so we don't want the data collected from that test to include anybody who has not yet clicked on the menu (and would not yet have seen the content the test changes). I have seen a couple solutions to similar questions:- creating a URL parameter that the second A/B test could watch for likely won't work in this case if it means the whole page has to reload, this would mean the user could never successfully see the dropdown if the page reloads every time they try to access it - I found a solution [1] involving creating a custom mbox, offer, and audience - but it is not clear to me how this would be implemented in Adobe Target or
Why Successful Adobe Experience Manager MVPs Become Long Term Failures by Bounteous Abstract When purchasing a CMS Solution such as Adobe Experience Manager (AEM), oftentimes the initial costs of licensing and migration drive business stakeholders to seek the lowest time and cost minimum viable product (MVP) solution to go live. However, that approach can leave a business with a shiny solution on Day 1 that is not ready for Day 2, requiring the business to choose between overhauling the solution or enduring higher maintenance costs for the life of the platform. A well-implemented CMS from both a business strategy and technical perspective is evidenced by tangible metrics, over time. Costs for migrating new sites to the platform decrease site to site. Author engagement and design flexibility within the platform continually increase. And these results are underpinned by only nominal increases in ongoing platform maintenance costs. That’s the picture of success, so when this picture doe
cq:isContainer Property in AEM by Arun Patidar Abstract cq:isContainer Property in AEM It’s a common use case to create components that include other components. These components are called “Container Components” e.g. parsys, etc and are denoted by adding cq:isContainer="{Boolean}true" as a property on the component. Why is it important to add cq:isContainer property to container component? The answer is simple to make sure the component must behave like a container component. You must be thinking what does it even mean? Let's understand this with an example. I have 3 components, component-container, component-a, component-b The component structure would be: component-container |----- component-a |----- component-b i.e. /apps/weretail/components/demo/component-container/component-container.html What happens if component-container does not have cq:isContainer property Read Full Blog cq:isContainer Property in AEM Q&A Please use this thread to ask the related questions.
Webinar On-Demand: 5 Ways to Use the Workfront and AEM Integration by Peter Nash Abstract If you missed the live webinar, 5 Ways to Use the Workfront and AEM Integration, don’t worry — you and your team can watch it any time on-demand. In this webinar Adam Driggs walked us through 5 ways that organizations can use Workfront and AEM together. His demonstrations cover unique ways to use this integration to streamline your processes, and get content and assets out to your delivery channels more efficiently. If you have some follow up questions after you watch the demo, then please reach out to us; we would be happy to discuss any questions you may have about integrating these two systems for your business. And keep an eye out for our next webinar. Are you looking for an implementation partner that knows the best ways to get the most out of your Workfront and AEM investments? We do. We’re Hoodoo. Read Full Blog Webinar On-Demand: 5 Ways to Use the Workfront and AEM Integration Q&A P
AEM Feature - Author Preview Servlet by Perficient Abstract Why is this needed? It may just be me, but I’ve found it incredibly common for clients to request an unauthenticated URL to view in-progress pages within an AEM Author instance. The ask makes a lot of sense, as often those who approve content will often just want to give a cursory glance, and not need extensive time within the AEM Author system or a dedicated login/account. Instead, it’d be great to have a way to preview content prior to go-live, potentially via an offline or email based approval process. Today, that is not available out of the box with AEM, and people wanting to have this behavior have either a dedicated “Preview” Publish instance, or alternatively, have to bite the bullet and forced all their approvers to log in prior to seeing any content. A new challenger approaches Enter the Preview Servlet. This custom servlet bypasses authentication and allows a page to render directly on the active author instance. H
Customizing CIF Product Component to Query Custom Properties/Objects in AEM by Bimmi Soi Abstract Understanding and modifying the GraphQL queries is one of the key ways in which the CIF Core Components can be extended. Your custom query : { products( filter: { sku: { eq: "YOUR_SKU" } } ) { items { name sku customProperty customObject{ name, code } } } } Response : { "data": { "products": { "items": [ { "name": "Product Name", "sku": "sku", "customProperty":"customVariableValue", "customObject": { "name": "nameValue", "code": "codeValue", } } ] } } } In order to achieve that AbstractQuery (com.shopify.graphql.support.AbstractQuery) abstract class provides two methods to query custom property and object respectively. addCustomSimpleField(String fieldName); addCustomObjectField(String fieldName, CustomFieldQueryDefinition queryDef); Read Full Blog Customizing CIF Product Component to Query Custom Properties/Objects in AEM Q&A Please use this thread to ask the related questions.
Understanding AEM request processing using the OSGI - Recent Request console by Jörg Hoh Abstract During some recent work on performance improvements in request processing I used a tool, which is part of AEM for a very long time now; I cannot recall a time when it was NOT there. It’s very simple, but nevertheless powerful and it can help you to understand the processing of requests in AEM much better. I am talking about the “Recent Requests Console” in the OSGI webconsole, which is a gem in the “AEM performance tuning” toolbox. In this blog post I use this tool to explain the details of the request rendering process of AEM. You can find the detailed description of this process in the pages linked from this page (Sling documentation). With this Recent Requests screen (goto /system/console/requests) you can drill down into the rendering process of the last 20 requests handled by this AEM instance; these are listed at the top of the screen. Be aware that if you have a lot of concurren
Adobe Experience Manager(AEM) Content Translation - Deep Dive(Part1) by Albinsblog Abstract The website translation is the process of taking your website content in its original language(e.g en) and adapting it into other languages e.g es, to make it is accessible and useable across global customers. Content Translation allows you to create an initial version of a page based on an existing version from a different language. Automate the translation of page content, assets, etc to create and maintain multilingual websites through the translation process. The Adobe Experience Manager Translation Framework enables website content managers to easily submit content for professional translation and automatically receive translations back in AEM. All that tedious manual effort is replaced by a streamlined process that delivers personalized customer experiences. Most of these contents are already part Adobe documents, thought of sharing my learning for reference and also if it helps someone
Hello, We have requirement to implement automated testing for AEM authoring functionality. We have created automation suite using Selenium and cucumber frameworks and we're able to automatically login to AEM and able create pages using required template.But once page is created we're unable to locate container component element to drag and drop the components. Please see the screenshots below DOM for container component. If you implemented similar. Please share your thoughts. And also, please share your thoughts if you implemented automation for AEM authoring functionality for Touch UI in AEM 6.5.
Author: Khushwant Sehgal (@KhushwantSehgal). We live in a world full of great digital and physical experiences. Companies invest heavily in creating personalized and enthralling experiences to capture the attention of their customers. These experiences help companies attract, retain, and grow their customer base. “Today, people buy experiences, not products, products [aren’t the main] differentiator anymore."— Shantanu Narayan, CEO, Adobe AEM Forms has helped many organizations deliver great onboarding and enrollment experiences over the years. These experiences have helped organizations convert leads to actual sales, process captured customer data with business workflows, deliver responsive experiences based on the audience profile, and much more. Now, AEM Forms is available as a Cloud Service. The cloud-native edition of AEM Forms allows you to quickly get started with AEM Forms to build beautiful data capture experiences without setting up local infrastructure. The Cloud
Author: Jaemi Bremner (@Jaemi_Bremner), Allan Witts (@allanwitts) and Eric Knee (@EricKneeDX). This blog details a single implementation for a publishing customer on Adobe Experience Platform. Not all aspects are guaranteed as general availability. If you need professional guidance on how to proceed, please reach out to Adobe Consulting Services on this topic. “30-day free trial! 7-day trial period! First month free!” As consumers, we are all familiar with this kind of offer when signing up for a subscription service. It is an attractive offer, giving us the chance to try out and assess the value of the product or service before we commit to paying. From the business perspective, the logic is also clear — gain subscribers by postponing the payment barrier and attempt to convince the consumer that the product or service is worth paying for, such that the free subscribers go on to become paid subscribers. When running such a promotion, the key factor to make it succ
Hi,The uploading of file stopped working. When trying to upload an XDP template, the clicking of the 'File Upload' opens the directory to select a file, but after clicking on the file the directory closes but the .xdp form is not uploaded to server:port//aem/forms.html/content/dam/formsanddocuments/What could have happened to cause this? I restarted the server this morning after adding the path to fonts in CQ-DAM-Handler-Gibson Font Manager Service.Thanks,Leena
Authors: Raman Gupta and Vardan Gupta Adobe Experience Platform’s Orchestration Service provides APIs to author and manage multi-step workflows. Behind the scenes, this service leverages Apache Airflow as its workflow execution engine. It supports two types of workflow triggering/execution mechanism. Time-based trigger based on some cron schedule On-demand/ad-hoc trigger using APIs. But there are use cases/requirements to trigger a workflow based on some events. Like trigger data-prep or data warehousing job on the arrival of new data into Adobe Experience Platform. So what's missing is the capability to trigger a workflow based on some pipeline events. AEP Orchestration Service is being used by multiple solutions and event-based requirements are coming from most of them. So instead of every service writing their own event listener and placing a custom rule engine for identifying matched events, we thought of building event-based triggering capability as part of the orchestration se
Author: JB Creusat This post provides the steps necessary for Adobe Analytics users to take to ensure their cookies will continue to provide the data they need for customers using the new Chrome 80 browser. With the release of Chrome 80 in February 2020, the need for strong governance around your domains has never been so critical. Whether you have a single domain or manage several, you need to ensure you have secure and first-party cookie support. If you fail to account for all your domains, visitor identification issues will occur with sessions and marketing attribution broken. First validation checks Two common issues will arise when you don’t have governance around your domains: you will find some of your domains in the Referring Domain report and your Page report will include "Other" as a value. The last issue is the one you want to fix first: it means you have a domain hosting your Adobe Analytics library, but you have not included it in your Internal URL Filters. Review your cu
Authors: Joseph R. Jones, Priyanka Sharma, Erin Davis, and Jody Arthur This blog describes how Adobe Experience Platform Identity Service works with identity data to help our customers develop the information-rich profiles they need to engage their customers at a deeper level. Check out the preceding blog about Identity Graph here. Identity is a core concept when it comes to building engaging and relevant customer experiences. Yet many enterprises struggle with building the rich and accurate 360-degree customer profiles necessary to deliver such experiences. The problems associated with establishing identity for enterprises is either they have an unmanageable amount of data or too little data. However, the primary challenge lies in connecting the data they have in a way that creates a meaningful representation of their customers' identities. At Adobe, we know that fragmented profiles developed with disconnected data result in failed attempts to deliver relevant, engaging experiences. A
Authors: Chandler Allphin and Jenny Medeiros How Adobe Experience Platform is optimizing our services to reduce our ecological footprint. This post highlights how the Adobe Experience Platform engineering organization is working to improve efficiency and maximize the performance of our services while consistently reducing our impact on the environment. As we continuously build, release, and leverage new technologies, it's easy to overlook how these affect the world we live in. From the electricity powering our computers to the data centers processing millions of requests per second, in just one year these technologies generate the equivalent of 26.5 million cars in carbon pollution. At Adobe, we recognize that our products are not only changing the way our customers work, they are also changing the environment. Our long-held culture of conservation is woven into everything we do, and we believe that sustainability in our industry begins with the lines of code we write. This means that
Authors: Fakrudeen Ali Ahmed, Jianmei Ye, and Jody Arthur This post offers a behind-the-scenes look at Adobe Experience Platform process for evaluating streaming frameworks for large-scale event processing to provide better customer experiences with Adobe Experience Cloud. Adobe Experience Cloud provides personalization, advanced analytics, and other services to help enterprises using Adobe Experience Platform meet the rising customer expectations for personalized experiences. Helping our customers deliver these kinds of experiences in real-time requires an ability to process huge amounts of data while at the same time ensuring reliability and peak performance. Every day, billions of events are uploaded to Adobe Experience Platform and into Adobe Experience Cloud in batches and processed with daily or weekly workflows on Apache Spark. And the volume of data our system receives is growing fast. We evaluated four different streaming frameworks in order to find the best one to support our
Authors: Kumar Sangareddi, Ashok Pancily Poothiyot, Chetan Bhatt, and Jody Arthur Learn how Adobe Experience Platform is pushing the boundaries of what Jupyter Notebooks can do — making data science at scale easier, faster, and more powerful with pre-built notebooks and innovative plug-ins, one-click packaging of Jupyter notebooks to recipes, parameterized notebooks, and capabilities for scaling Jupyter for multi-tenancy. When it comes to developing machine learning models, Jupyter Notebooks has become the go-to tool for data scientists everywhere. Jupyter Notebooks is highly customizable and allows users to combine code, comments, multimedia, and visualizations in a single interactive notebook that can be shared, re-used, and re-worked as needed to fit the use case. And, the ability to host notebooks in the cloud offers data scientists access to far greater computing resources than they would have on their local machines. Despite these benefits, Jupyter Notebooks out of the box presen
Authors: Mihai Balaci, Valentin Rojco, Douglas Paton In this blog post, we take a look at how and why we developed the otsdb-protector tool to protect OpenTSDB from query abuse across the Adobe Experience Platform. We figured out what kind of query abuse was taking place and how otsdb-protector helps stop the problem. We use OpenTSDB, among other databases, for metrics collection and storage in Adobe Experience Platform. This powerful, scalable time-series database provides an ideal storage place for the vast amount of metrics that we produce. OpenTSDB is effective because, along with being scalable, the data scheme allows for fast aggregation of data. To access and visualize data stored on OpenTSDB, we used Grafana. Grafana made the most sense for it for a few reasons. First, it has a huge amount of supper within the open-source community, both in terms of users and developers who support the project. It also offered visualization plugins for every backend that we might use it for, g
Authors: Rares Vlasceanu, Catalin Costache, Dragos Georgita, Todd Tomkinson, and Jenny Medeiros This post is the second of a two-part series on our ongoing Adobe Experience Platform Edge Network project and how it will streamline customer interactions with Adobe Experience Cloud Edge services. Check part one: Simplifying Customer Workflows with Adobe Experience Platform Web SDK. Adobe Experience Cloud brings multiple marketing solutions in one place to provide customers with a seamless experience. Each solution deploys an individual data collection SDK, which then sends numerous requests to separate domains and edge servers to exchange data with Adobe Experience Cloud edge services. This saturated network of client-server calls significantly delays the customer's website performance and undercuts the overall end-user experience. It also slows the customer's time-to-value since they're required to learn, deploy and manage multiple implementations and data collection strategies. Edge Ne
Authors: Constantin Muraru, Iulian Titiriga, and Jody Arthur Read about Adobe Experience Platform's experience using Spinnaker installed with Kubernetes to turn a cumbersome and error-prone, script-based deployment of critical applications into a fast and easy process resulting in better security, higher availability, and lower costs. Today, Adobe uses Spinnaker to deploy some of our most critical Adobe Audience Manager applications to production, And, we're now using Spinnaker in Kubernetes to deploy Adobe Experience Platform's "new" Experience Edge in several regions across the world. Most of our deployments are virtual machines in AWS Elastic Compute Cloud (Amazon EC2). We can deploy for staging purposes to some of our most critical applications. For example, we are now using Spinnaker to deploy Experience Edge is an Adobe Experience Platform initiative that provides a single, optimized gateway for requests that want to interact with other Adobe Experience Cloud edge services, such
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.