AEM (Adobe Experience Manager) may be a detailedly content management solution for building websites and every one of their integral applications, including paperless forms, mobile apps and online communities. It’s a sort of a system that creates it easy for working professionals to manage all their marketing content and assets, then deliver them to the proper person at the legal time.
It allows non-technical marketers to create engaging pages easily. Developing and editing of any site is often efficient through intuitive tools, so if you’re the one who is curious about building your career within the same line as AEM. So, below we’ve mentioned some interview questions & answers for AEM Jobs that one can undergo and prepare well.
AEM (Adobe Experience Manager) may be a detailed content management solution for building websites and every one of their integral applications, including paperless forms, mobile apps and online communities. It’s a sort of a system that creates it easy for working professionals to manage all their marketing content and assets, then deliver them to the proper person at the legal time.
It allows non-technical marketers to create engaging pages easily. Developing and editing of any site is often efficient through intuitive tools, so if you’re the one who is curious about building your career within the same line as AEM. So, below we’ve mentioned some interview questions & answers for AEM Jobs that one can undergo and prepare well.
The emissary is AEM’s hoarding and/or load balancing tool. By using the dispatcher it also can help protect your AEM server from attack since it’ll be using cached pages. The goal of the hoarding is to cache the maximum amount of content as possible, so it doesn’t get to access the layout engine. Load balancing is the practice of distributing computational load of the web site across several instances of AEM. The benefits of using the hoarding as a load balancing tool are that you simply gain increased processing power since the dispatcher shares document requests between several instances of AEM, and to have increased fail-safe coverage. This is accomplished by if the dispatcher does not receive responses from an instance, it will automatically relay the request to another instance.
Sightly is an HTML original language that was introduced in AEM 6.0. The name slightly means “pleasing to the eye”, and its focus is to keep your markup beautiful and maintainable.
Features | AEM | Sitecore CMS |
Cost-Effective | High | High |
Complexity | High | High |
Features | Available | Available |
Integration | Easy to access | Easy to access |
CMS Support | Multiple User Access Supported | Multiple User Access Supported |
Security | High | High |
Customization | Moderate customizations | Highly customizable |
Single platform support | Yes | No |
User Experience | Good | Good |
Both dialog and style dialog defines the UI interface for allowing the user to configure the component.
Design Dialog of a component is often seen/edited within the design mode of the page. Design dialog is at template level so all the pages of the template will share the same design dialog and it is stored under /etc/designs folder.
Whereas Dialog of a component is at page level so each component instance will have its own dialog and knowledge entered within the dialog are going to be stored under /content folder.
It is worn for add-on site-specific js and CSS files to the page and also third party js and CSS files.
It is an inventory of other client library categories on which this library folder depends. For example, given two cq: ClientLibraryFolder nodes F and G, if an enter F requires another enter G so as to function properly, then a minimum of one of the groups of G should be among the dependencies of F.
Embed: Used to embed code from other libraries. If node F implant nodes G and H, the resulting HTML is going to be a degree of content from nodes G and H.
Dependency: Please refer to the above answer.
Package: A Package is a zip file that contains the content in the form of a file-system serialization (called “vault” serialization) that displays the content from the repository as an easy-to-use-and-edit representation of files and folders. Packages can include content and project-related data.
Bundle: Bundle may be a dense coupled, actively loadable collection of classes, jars, and configuration files that explicitly declare their external dependencies (if any).
Following are the life cycle states of OSGI:
Installed: The bundle has been successfully installed.
Resolved: All Java classes that the clump needs are available. This state indicates that the bundle is either able to be started or has stopped.
Starting: The bundle is being started, the BundleActivator.start method are going to be called, and this method has not yet returned. When the bundle has an activation policy, the bundle will remain within the STARTING state until the bundle is activated consistently with its activation policy.
Active: The bundle has been successfully operated and is running; its Bundle operator start method has been called and returned.
Stopping: The bundle is being stopped. The BundleActivator.stop method has been known but the stop method has not yet come back.
Uninstalled: The bundle has been uninstalled. It cannot move into another state.
parsys: it’s called the “Paragraph System” component during which you’ll add other components at the page level.
iparsys: It is an inherited paragraph system, which inherits the parent page “paragraph system”.
It is a workflow part that can be set up that is used for calling a java class in the workflow.
Related Article: Adobe (AEM) CQ5 Supervisor Interview Questions
Versions of CQ before 5.5 were hold up a servlet receptacle (CQSE, by default, though others might be used) running with multiple web apps: One for the CRX content repository and one for the OSGi receptacle which itself contained Sling and AEM. The Sling web app was secure and handled most of the request processing.
With CQ 5.5 and AEM, the OSGi container is positioned at the root and the OSGi HTTP service, backed by Sling acting as the sole request handling endpoint. The CRX content repository is now just another OSGi service, alongside the varied services that comprise the remainder of the AEM functionality. These changes don’t affect applications built on top of AEM or Sling.
The new architecture means the quickstart jar installation of AEM can not support other web applications running alongside AEM. However, the war version of AEM is meant to be deployed in an application server, where additional web applications are often deployed alongside it.
Added three new connections to key Adobe products – Creative Suite, Scene7, Search&Promote
The authors can directly work on mobile apps.
Partnered with hybrid software to add some nice eCommerce capabilities.
Added Undo(Ctrl+z) and Redo(Ctrl+y) functionalities.
The dispatcher is a CQ5 caching and/or load balancing tool. The dispatcher also helps to guard your AEM server from attack. It caches responses from publish instance, to extend the responsiveness and security of your externally facing published website
Replication is the process of publishing the page from Author Instance to Process Instance.
Steps involved in replication:
par base: The par base allows components to inherit attributes from other components, similar to subclasses in object-oriented languages such as Java, C++, and so on. For example, once you open the /libs/foundation/components/text node in the CRX Explorer, you see that it’s a property named sling:resourceSuperType, which references the par base component. The par base here defines tree scripts to render images, titles, then on in order that all components subclassed from this par base can use this script.
phrases (Paragraph System): The phrases system (parsys) is a amalgam component that allows authors to add components of different types to a page and contains all other paragraph components. Each paragraph type is represented as a component. The paragraph system itself is additionally a component, which contains the opposite paragraph components.
Multi-Site Manager (MSM) enables you to simply manage multiple internet sites that share common content. MSM allows you to define relations between the sites in order that content changes in one site are automatically replicated in other sites.
For example, internet sites are often provided in multiple languages for international audiences. When the amount of web sites within the same language is low (three to five), a manual process for synchronizing content across sites is feasible . However, as soon because the number of web sites grows or when multiple languages are involved, it becomes more efficient to automate the method .
Step 1 – Copy /libs/foundation/components/page/dialog node to template component’s node
Step 2 – Modify dialog node
Live Copy – Copy created from an existing site or blueprint is named Live Copy. Rollout configurations for this Live Copy are often configured from the tools console.
Language Copy – Site which is created using a language tool is called a Language copy. Basically to create a site for different languages.
The persistence manager saves the repository content to a permanent storage solution, like the filing system or a database. By default, CRX saves depot content to the Tar tenacity manager. Following DB’s can be used for storing content – DB2, Oracle, SQL Server, MySQL.
1
c:import url=”redirect.jsp”
I assume this is often the import tag of the quality Tag Library. This tag is documented
1
HTTP://JAVA.SUN.COM/PRODUCTS/JSP/JSTL/1.1/DOCS/TLDDOCS/C/IMPORT.HTML
and does not know about Sling directly.
1
sling:include path=”trail” resourceType=”foundation/components/breadcrumb”
This is the cover tag of the Sling JSP Tag library. This tag knows about Sling and also keep up RequestDispatcherOptions.
1
cq:include path=”trail” resourceType=”foundation/components/breadcrumb” or cq:include script=”redirect.jsp”
This tag is a Communique specific extension of the Sling JSP Tag library include tag. IIRC it supports callings scripts additionally to only including renderings of resources.
In a Communiqué application, I might suggest to generally use the Communique or Sling include tag since this provides you with more Sling support.
You may use the JSTL import tag if you don’t have specific requirements for Sling extended features, decide to use the JSP (fragment) outside of Communique or if you would like to further process the generated (imported) content with a reader or a variable.
To connect to an external DB, a connection pool must be configured by creating a node of type sling: OsgiConfig. Below screenshot if for connecting to SQL database, but if you want to connect to other DB then properties values need to be changed accordingly:
Use below code to get a connection:
DataSourcePool dspService = sling.getService(DataSourcePool.class);
DataSource ds = (DataSource) dspService.getDataSource(“hsqldbds”);
The DAM allows you to make renditions of a picture that include different sizes and versions of an equivalent asset. You can use those renditions within the content of your website, which are often helpful once you got to create thumbnails or smaller views of huge , high-resolution images. When you are creating multi-device websites where Internet bandwidth may be a varying concern, this feature becomes even more important. After all, you would like to attenuate the dimensions of any files a site visitor has got to download to look at your site. Making your site load faster improves your program optimization and therefore the user experience.
24.What is a content repository? What is JCR?
A Content repository is essentially an area where digital content is stored. Generally, the structure of the content repository is hierarchical and represented as a tree structure where each node of the tree is employed to store content.
Java Content Repository may be a statement given by the Java community to access the content repository during a uniform way (platform-independent and vendor-independent way). The specification was initially released as JSR-170(JCR 1.0) then later Revised Version 2 as (JCR-283).The javax.JCR API provides the varied classes and interfaces to access a content repository.
25.What is REST? What is a RESTful Framework?
REST stands for Representational State Transfer. REST-style architectures consist of clients and servers. Clients begin requests to servers; servers process requests and return appropriate responses. petition and replies are built around the transfer of representations of resources. A resource is often essentially any coherent and meaningful concept which will be addressed. A representation of a resource is usually a document that captures the present or intended state of a resource.
Apache Sling may be a RESTful framework to access a java content repository over http protocol.
26.What is Reverse Replication?
Reverse replication is employed to urge user content generated on a publish instance back to the author instance. To do this you would like a reverse replication agent within the author environment. This act is the active component to gather information from the outbox within the publish environment.
Dialog may be a key element of your component as they supply an interface for authors to configure and supply input thereto component. The user input will be stored at the page level.
Design dialog will part the content at the template level. Also, we will dynamically change the content in design mode.
This is headed by the Sling Management Console of CQ5.
CQ5 CRX is pre-loaded to run within a cluster, even when running one instance. Hence the arrangement of multi-node clusters with little effort happens in CQ5.
Servlet Engine professes as a server within which each CQ (and CRX if used) instance runs. Even though you can run CQ WCM without an application server, a Servlet Engine is always needed.
32.State various strategies used by Dispatcher?
For inheriting properties we’ve to make two components with unique names within the base component dialog. For eg. If your plan is to possess two rich text areas within the dialog of components that inherit from the bottom , then you want to include two rich text areas with distinctive names in the base component dialog. In any case, every input field of a dialog must have a singular name, else they’re going to point to an equivalent property path relative to the JCR: content node of the component when worn on a page.
You can always limit who can access certain folders in CQ Digital Assets by making the folder a part of a CUG(closed user group).
Steps to form a folder a part of a CUG:
37.What is a Template?
A CQ template empowers you to work out a uniform style for the pages in your application. A template comprises nodes that specify the page structure.
38.How does a dispatcher perform Load balancing activity?
The dispatcher performs load balancing activity by executing these steps:
By classifying these parameters, the load balancers will work according to in CQ5
39.List out all available interfaces in Adobe Experience Manager?
The list of all available interfaces in AEM is:
The main benefits of using OSGI are:
The listener property in AEM for a component is employed to define what happens before or after an action on the component. This is added by using the “cq: listeners” node with a node sort of “cq: EditListenersConfig”. The listener property also can be added to any widget in AEM. In order to add a listener to that widget you just need to add a node that is called “listeners” with a type of “nt: unstructured”. Then you only got to add child nodes to the “listeners” node that are events of that widget. You can find an inventory of events for every widget by searching CQ Widget API documentation.
You can add digital assets to your dam by using the graphical interface or through WebDav access. If you’re using the graphical interface , you’d just browse for the chosen files you’d wish to add, then cq will create the metadata for those assets in the dam folder. You would generally use the WebDav option when you want to upload a large number of assets at once.
You can build a bundle via crxde by navigating to the origin folder of your project located under “apps”. Once you are doing this, right-click on the “src” folder and prefer to create a bundle. This will open the wizard which will walk you thru creating your bundle. It is recommended that you simply not use crxde to make OSGI bundles for AEM. Instead, you should be using Maven.
The purpose of the Activator.java file is that it’s to be notified any time there are bundle start and stop events for that bundle. The Activator.java file is an optional listener class that’s created once you create a bundle through crxde.
What is a CQ5 overlay/override component?
The overlay/override component is employed once you want to use an out of the box component in AEM and you would like to feature extra features thereto and you would like to change it across all instances of that component. For example if you would like to feature features to the out of the box “text” component, but you don’t want to make a replacement component, you’d want to copy the “text” component from “libs/foundation/components” to “apps/foundation/components” and keep an equivalent folder structure that’s used. When this is done, any changes that are done to this new component will be reflected in the out of the box “text” component, without changing the original code under “libs”. It is generally not an honest practice to switch the first code, which is why CQ offers the power to use overlays.
Sightly differs from other templating systems in 3 ways. Sightly is secure by invariable, it offers segregation of concerns, and slightly is HTML5 because it is a valid HTML5 file. Sightly is secure by invariable because it instinctively filters and flees all variables being output to the presentation layer to stop cross-site-scripting vulnerabilities. Sightly offers segregation of concern because it’s deliberately limited to make sure that a true programing language is employed to precise the corresponding logic. This is done through the Use-API pattern.
Above, are the mentioned interview questions & answers for AEM Jobs, candidates who have an interest in applying for an equivalent profile should undergo these AEM interview questions.
ITCourCes.com under SOWPRA LEARNINGS PRIVATE LIMITED is an online platform designed to solve the needs of aspirants to learn diverse IT Courses from industry expert trainers. We provide 24/7 support and can guide seekers to get right material as per their requirement.