Explore product-specific spaces to ask questions, share insights, and learn best practices.
Recently active
metatype=true in AEM by rashidjorvee Abstract Why we add parameter metatype=true in @Component annotation? When we add parameter metatype=true then Apache felix generate a metatype.xml file for that component, if we don’t then there will no metaype.xml file. Metatype.xml file contains an element which have parameters name and description of the component. Under the we have another ta which have detail information of property which we want to make visible and configurable on Apache felix console localhost:4502/system/console/configMgr. So if we specified ten properties in our component then there will be ten elements under the Metatype.xml file also contains the element with attribute PID and which has parameter OCDREF under the element, which represent and store the configured values. Value for PID and OCDREF is always used to same and that is also the name of the file which you will find in the CRX. When we add metatype=true in the parameter of @component that means we hav
Conflicts with Sling Feature Model and Content Configurations by danklco Abstract Both AEM as a Cloud Service and Sling CMS 1.0.2+ use the Sling OSGi Feature Model for provisioning instances. The Sling OSGi Feature Model offers several improvements over the Sling Provisioning Model it replaces in that it is richer in capabilities and more descriptive of the applications being created. There are some tricky situations you need to consider when converting legacy applications from a Provisioning Model paradigm to a Feature Model paradigm. Most revolve around the new initialization / configuration as code capabilities in the OSGi Feature Model. RepoInit and Content Package ACLs One of the abilities of the Sling OSGi Feature Model is to include RepoInit scripts as a part of the application definition. With RepoInit, we can express the desired state of the repository in a RepoInit script and the RepoInit Parser and Processor will initialize the repository in that state. This can include
Reusing Authored Content Effectively with Contextual Content Variables for Adobe Experience Manager by Ryan Keenan Abstract Adobe Experience Manager (AEM) provides non-technical users with a lot of power and flexibility when creating content as well as supplying tools for significant content reuse, like Content Fragments, but there are still situations in which developers need to be brought in to handle specific requirements. One of those cases is when content needs to be authored on a specific page but also surface values that are authored elsewhere in AEM. Bounteous is always looking for ways to enable our partners using AEM to be self-sufficient and empowered in their authoring environment and so Contextual Content Variables, a newly released feature in Adobe Consulting Services (ACS) AEM Commons, seeks to solve this need for direct developer intervention when trying to surface a contextual variable inside authored content. Contextual Content Variables This new feature allows aut
Using Jolt as a Transformation Tool in AEM by perficient Abstract One frequent use case most of the Adobe Experience Manager (AEM) Full Stack Developers would have come across is migrating content from different applications into AEM. Data from source applications can come in various formats like JSON, XML, CSV, etc. When the source file format is JSON, in order to transform the source data to target structure, we need to write complex programs to read and parse it. In this blog, I will show you an efficient and configurable solution to this problem. I recently faced this challenge with one of our clients. They have a Solr service, in which the most recent information about their shops around the world is stored. I wanted to avoid calling that service every time we present that information in AEM. For this purpose, I decided to implement a daily batch process to get the data from the service and turn it into JCR nodes and properties. The problem was that the information is stored in
Loading JSON Content into AEM by perficient Abstract Let’s talk about extract, transform, and load, also known as ETL. If you are an AEM professional, this is something you have previously dealt with. It could be something along the lines of products, user bios, or store locations. The extract and transform parts may differ depending on your source and requirements. The loading part is almost always going to be into AEM. While there may be a few ways to do that, let us talk about what is there for you out-of-the-box. Sling Post Servlet As an AEM developer, the Sling Post Servlet is something you should be familiar with. In particular, there is an import operation. This allows us to do the following: curl -L https://www.boredapi.com/api/activity | \ curl -u admin:admin \ -F":contentFile=@-" \ -F":nameHint=activity" \ -F":operation=import" \ -F":contentType=json" \ http://localhost:4502/content/mysite/us/en/jcr:content/root/container You can run this many times. You will get activity
Use cases of ModifiableValueMap in AEM by aem-ti2fap blogspot Abstract The ModifiableValueMap is an extension of the ValueMap which allows to modify and persist properties. All changes to this map are stored in the transient layer of the resource resolver or more precisely in the transient layer of the resource provider managing this resource. Use cases in AEM :: Mandatory step - 1. Get the resource resolver. 2. Get ModifiableValueMap interface - ModifiableValueMap mvp = resolver.adaptTo(ModifiableValueMap.class); 1. Get SINGLE value property of a node: String value = mvp.get("multivalue", String.class); 2. Get MULTI value property of a node: String[] value = mvp.get("multivalue", String[].class); 3. Add SINGLE value property to a node: String val = "single"; a. mvp.put("singlevalue", val); b. mvp.putIfAbsent("singlevalue", val); 4. Add MULTI value property to a node: String[] val = {"test1","test2"}; mvp.put("multivalue", val); 5. Add MULTIPLE properties to a node: Map<Stri
Hi ,We have recently upgraded from at.js 1.6 to at.js 2.0.0 to support VEC for single page applications. However as per documentation below , at.js 2.0.0 no more supports cross domain tracking. Can anyone please suggest any alternate solution for cross domain tracking with at.js 2.0.0 ( ability to create a Target activity that spans siteA.com and siteB.com and the visitor would remain in the same experience when they crossed domains) https://docs.adobe.com/content/help/en/target/using/implement-target/client-side/atjs-cookies.htmlThird-party cookies and cross domain tracking is not supportedCross-domain tracking makes it possible to see sessions on two related sites, but with different domains, as a single session. You could create a Target activity that spans siteA.com and siteB.com and the visitor would remain in the same experience when they crossed domains. This functionality ties into at.js 1.x third-party and first-party cookie behavior.In at.js 1.x, the third-party cookie was s
Howdy, campers! It's Monday and before we all get buried too deep into the week, wanted to throw out some possible User Group topics we're considering for the next few months. (If you want to know more about User Groups, check out the User Groups tab on the Events page here on Workfront One.) Are you an expert in one of these areas? Or even just mildly experienced and have some "what I wish I'd known" advice? We'd love to have you participate. While I can't offer you fame and fortune in exchange, I can promise a lively discussion and the appreciation of your Workfront peers for being willing to share how things look at your organization. It's nice to feel like we aren't alone in all this, right? Drop a comment below, or send me an email at farwell@adobe.com and I can give you more information on what to expect. Thanks so much for your continued support of User Groups. Integrating with Workfront: Workfront to Workfront IdeasIntegrating with Workf
Use this thread to ask any questions related to the Building advanced campaigns with Adobe Campaign V8 for Business Users course on Experience League. Experts are monitoring this thread to ensure your questions are answered.
Hey everyone, new to the forum here. I wanted to share an internal talk I did in my company about using Google Closure Compiler (GCC) in AEM. Hope you enjoy!!! Let me know if you have any questions or feedback.Google Closure Compiler in AEM - YouTube
Hi All, I was wondering if anybody has recommendations for a solution to this problem. We were hoping to add a few surveys to our websites (31 websites all the same but in different languages) for visitors at certain points (order complete / cancelled etc) but we wanted to link the data with Adobe so we could see in Workspace what page they were on when they answered and another other data (time on site / depth of visit etc) as well as importing things order number and it's associated values. Does anybody use a service that they can recommend where the data can go into analytics? Thanks Dave
**This video was re-uploaded in July 2024 Have you set up a Bizible report and found yourself wondering whether to use a Bizible Touchpoint (BT) or a Bizible Attribution Touchpoint (BAT)? Harnessing the power of these two Bizible features can lead to better, more insightful reporting. Watch this on-demand webinar to hear Bizible expert and Marketo Engage Champion @Kimberly_Galit1 review how to report effectively with BTs and BATs. You'll learn: How BTs and BATs are tracked differently Advantages of reporting with BTs and BATs How to set up reports using BTs and BATs Content level: Beginner/intermediate Looking for more Bizible reporting resources? Slides: Tracking Touchpoints: Reporting with BTs and BATs Virtual Bizible User Group Doc: Difference Between BTs and BATs Peer Perspective: Bizible Attribution Models with Justin Norris Webinar: The A-Z of Bizible Attribution Models with Kate Colbert Doc: Bizible Attribution Models
If you have questions about the new Workfront experience, or are looking for ideas and guidance on how to tackle the change management of the migration, join us on Tuesday, August 17 at 8:00am Pacific (4:00pm UK). RSVP here. You’ll hear guidance from the Workfront Customer Success team on what they have seen work best. @Monique Evans‚ from Stanley Black & Decker will share a bit about her own journey with the transition, from pre-planning to roll-out, and lessons learned along the way. We’ll also share an updated list of resources (including a downloadable one-month transition plan). We'll leave plenty of time for group discussion for you to share questions, concerns and ideas about your own migration. Workfront User Group ‚Äì Transitioning to the new Workfront experience Tuesday, August 17, 2021 8:00am Pacific / 4:00pm UK Duration: 90-minutes RSVP here: https://adobe.ly/2TUOagg
Join us for the next monthly Adobe Target Community Q&A Coffee Break, taking place Wednesday, August 11th, 2021 @ 8am PT 🗓️☕Be sure to MARK YOUR CALENDARS with a link to this thread☕🗓️ We'll be joined by Jim McTiernan, aka @jim_mctiernan, Principal Solutions Consultant for Adobe Target, who will be signed in here to the Adobe Target Community to chat directly with you on this thread about your Adobe Target questions pertaining to his areas of expertise: Adobe Target Recommendations AB and MVT testing Personalization REQUIREMENTS TO PARTICIPATE Must be signed in to the Community during the 1-hour period Must post a Question about Adobe Target THAT'S IT! *(think of this as the Adobe Target Community equivalent of an AMA, (“Ask Me Anything”), and bring your best speed-typing game) INSTRUCTIONS Click the blue “Reply” button at the bottom rig
So you're ready to build a journey in Abode Journey Optimizer. You click on "Create Journey", give your new journey a name and set the basic properties. And then...you have a blank canvas. How do you get started?It depends on the type of use case you have in mind. The key question to ask is do I want to:Send a message to my audience at a specified time (which could be right now, or on a recurring schedule)? Or,Set up a message to be triggered automatically in response to a behavioral action (such as first launch of your mobile app, or completing an online purchase) or some other event?Send a message on a specified schedule (marketer-driven)If you want to message your audience right away or on a set schedule, you'll start the journey with a Read Segment activity. Once you drop the Read Segment activity (which you can find in the left palette under "Orchestration") onto the canvas, you can specify your target audience and then configure the schedule on which the journey should run to sen
Handy Commands For Developers by Ashish Mishra Abstract Maven Scenario 1: Start the AEM in debug mode java -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=127.0.0.1:8765 -XX:+HeapDumpOnOutOfMemoryError -XX:MaxPermSize=256M -Xmx1024m -Dorg.apache.sling.commons.log.level=INFO -jar cq-quickstart-6.5.0.jar Scenario 2: Build and deploy AEM mvn -PautoInstallPackage -Padobe-public clean install Scenario 3: Start the Spring boot application mvn clean spring-boot:run Scenario 4: Start Spring boot in specific mode mvn clean spring-boot:run -Dspring-boot.run.profiles=local Scenario 5: Skip J-Unit test -Dmaven.test.skip=true Scenario 6: Start Spring boot in debug mode and also run a specific profile and skip j unit test compilation mvn spring-boot:run -Dspring-boot.run.jvmArguments="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005" -Dspring-boot.run.profiles=local -Dmaven.test.skip=true Read Full Blog Handy Commands For Develo
How to Create an Ecommerce Website Using Magento 2 by TAFF Inc Abstract How to Create an Ecommerce Website Using Magento 2 The growth of ecommerce is nothing but extraordinary in recent years as more and more people are buying online. There are various platforms available that offer a ready-made solution for developing and deploying an ecommerce website in minutes. Are you an entrepreneur? …and you want to start a Magento website for your eCommerce business. If so, You made the right decision! Magento is the most preferred choice among developers and enterprise clients for creating ecommerce sites. Magento is an open-source ecommerce platform developed using PHP and was acquired by Adobe Inc in May 2018. Read Full Blog How to Create an Ecommerce Website Using Magento 2 Q&A Please use this thread to ask the related questions.
Adobe Experience Manager Tutorial by CourseDrill Abstract Your constant search for the best material to gain end to end knowledge of Adobe Experience Manager ends here! We have designed this Adobe Experience Manager tutorial in a way to help the beginners to get started from the fundamental concepts and to gain an overall knowledge of this CMS platform. By the end of this AEM CQ5 tutorial, you will gain in-depth knowledge of all the major areas. If you are a beginner and wish to build your career in a top CMS tool or you may already be working on AEM and wish to build advanced skills you, can check out our AEM Training. Without wasting much time let’s get into the adobe AEM tutorial. Your constant search for the best material to gain end to end knowledge of Adobe Experience Manager ends here! We have designed this Adobe Experience Manager tutorial in a way to help the beginners to get started from the fundamental concepts and to gain an overall knowledge of this CMS platform. By th
Dev & QA (AEM 6.5 Upgrade) by Carlos Araujo Abstract This phase of the process involves code related task efforts. You will need to analyze the libraries and dependencies that you need to update, and of course, all the coding refactor needed because of the upgrade. Something that worked for me is to upgrade my local to 6.5 and then upgrade the code. Doing this I was able to identify dependencies that I was missing from my initial assessment. Keep in mind that (at least in my scenario) there were many changes at AEM libraries, methods were deprecated, how to access the repository through code changed to have stronger security, which means that having a good idea of what your solution does, and doing pretty good testing is a key factor that will allow you to have a better outcome of this process phase. The substeps within this process are: Create a dedicated code branch Cleanup content in production Backup and roll down content from production to lower environments. Update code
Offline Content Migration in AEM using oak-upgrade by Bhavani Ikkurthi Abstract Content migration between any 2 Adobe Experience Manager(AEM) instances presents its own challenges, in some cases those are compounded by the method. In this post, I present a way to tackle content migration in offline mode using oak-upgrade. oak-upgrade module has been traditionally used to upgrade from JCR 2.0 to the Oak node store. With the newest AEM platforms shipping with the oak repository, it has found its calling in migrating content between them — sidegrade. oak-upgrade is a Swiss army knife for copying content between virtually any repositories. Below is a minimalistic rundown of the steps involved in migrating content between 2 repositories using oak-upgrade. SETUP Both source and destination oak repositories are the same version. This is typically the case when both source and destination AEM instances are the same version. The oak repository version can be looked up at a few places. /crx
AEM Content Transfer Tool: Tips and tricks for a successful (and fast!) Extraction by Bruce Lefebvre Abstract The Content Transfer Tool (CTT) is essential if you have an existing Adobe Experience Manager (AEM) site or app and intend to migrate it to AEM as a Cloud Service (AEMaaCS). I contribute to the CTT as part of my day job, and wanted to share an in-depth, technical 2-part series on the phases of a migration. First up: Extraction. There is lots to consider when planning & executing a migration. This post is going to assume you’ve read the official docs and explored the Cloud Acceleration Manager before attempting a migration on your own environment. If you do wish to follow along, you will need a source AEM instance (version 6.3-6.5) and a user who is part of the administrators group on your target AEMaaCS environment. I’ll be using an AEM 6.4 instance backed by an Azure Blob Storage data store, and my AEMaaCS environment is running the latest release at the time of writing
Reusing Authored Content Effectively with Contextual Content Variables for Adobe Experience Manager by Ryan Keenan Abstract Adobe Experience Manager (AEM) provides non-technical users with a lot of power and flexibility when creating content as well as supplying tools for significant content reuse, like Content Fragments, but there are still situations in which developers need to be brought in to handle specific requirements. One of those cases is when content needs to be authored on a specific page but also surface values that are authored elsewhere in AEM. Bounteous is always looking for ways to enable our partners using AEM to be self-sufficient and empowered in their authoring environment and so Contextual Content Variables, a newly released feature in Adobe Consulting Services (ACS) AEM Commons, seeks to solve this need for direct developer intervention when trying to surface a contextual variable inside authored content. Contextual Content Variables This new feature allows au
AEM Content Fragments: Custom Models Tech Insights by Exadel Abstract By default, only the “Simple Fragment” model is available in AEM to create a Content Fragment (CF) (/libs/settings/dam/cfm/templates/simple). It has only one RTE field called “Main,” but sometimes we may need something more complex. In this article, we’ll take a look at how to create a custom AEM Content Fragment Model. Setup AEM Content Fragment Models, the data schemas of Content Fragments, must be enabled via AEM’s Configuration Browser, which allows Content Fragment Models to be defined on a configuration-by-configuration basis. To enable content fragment models, you need to: 1. Enable the use of Content Fragment Models in the Configuration Browser: a. Go to Tools -> General -> Configuration Browser b. Create a new configuration Read Full Blog AEM Content Fragments: Custom Models Tech Insights Q&A Please use this thread to ask the related questions.
AEM - Style System by Adobe Docs Abstract The Style System allows a template author to define style classes in the content policy of a component so that a content author is able to select them when editing the component on a page. These styles can be alternative visual variations of a component, making the component more flexible. This eliminates the need to develop a custom component for each style or to customize the component dialog to enable such style functionality. It leads to more reusable components that can be quickly and easily adapted to the needs of content authors without any AEM back-end development. Use Case Template authors not only need the ability to configure how components function for the content authors, but also to configure a number of alternative visual variations of a component. Likewise, content authors not only need the ability to structure and arrange their content, but also to select how it is presented visually. The Style System provides a unified so
Command Line Start and Stop by Adobe Docs Abstract Starting Adobe Experience Manager from the Command Line The start script is available under the /bin directory. Both Unix and Windows versions are provided. The script starts the instance installed in directory. Those two versions support a list of environment variables that could be used to start and tune the AEM instance. Windows platform start.bat script example SET CQ_PORT=1234 & ./start.bat Unix platform start script example CQ_PORT=1234 ./start NOTE The start script launches the AEM Quickstart installed under the /app folder. Stopping Adobe Experience Manager To stop AEM, do one of the following: Depending on the platform you are using: If you started AEM from either a script or the command line, press Ctrl+C to shut down the server. If you have used the start script on UNIX, you must use the stop script to stop AEM. If you started AEM by double-clicking the jar file, click the On button on the startup window (the butt
Already have an account? Login
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.