Interview Questions for Adobe Experience Manager AEM
Dvantages of AEM over every other CMS?
Ans: One huge gain of AEM over another CMS is the way it integrates with other merchandise from Adobe and with the Adobe Marketing Cloud. AEM comes built in with features like workflows to govern content in the CMS, using search queries to find whatever you are looking for, putting in place social collaboration, tagging content, and a way to control your virtual content.
AEM additionally includes a way to manipulate cellular programs, cell websites, e-trade, and advertising campaign management.
Q3. What is the technology stack that CQ5 is primarily based on?
Ans: The stack is based on 3 technologies. These technology are: Apache Sling, OSGI (Apache Felix), and the Java Content Repository (JCR). Apache Sling is a RESTful framework that is used to get right of entry to a jcr over http protocol. It will then map that request url to the node in the jcr. OSGI is a framework that is used for modular application development the use of Java. Each module, that is called a package, can be stopped and started out independently for the duration of runtime. The Java Content Repository uses the JSR-one hundred seventy API to get right of entry to the content repository with the aid of the usage of Java independently of the physical implementation. CQ5 makes use of its own implementation of the jcr known as CRX.
Q4. What is the role of the dispatcher?
Ans: The dispatcher is AEM’s caching and/or load balancing tool. By using the dispatcher it is able to additionally assist shield your AEM server from assault since it will likely be the usage of cached pages. The aim of the dispatcher is to cache as plenty content material as possible, so it does not want to access the layout engine. Load balancing is the practice of distributing computational load of the internet site throughout numerous times of AEM. The blessings of the use of the dispatcher as a load balancing device is so that you benefit multiplied processing strength for the reason that dispatcher shares document requests among numerous instances of AEM, and to have accelerated fail-secure coverage. This is accomplished by means of if the dispatcher does no longer receive responsesfrom an example, it'll automatically relay the request to another instance.
Q5. What is sightly?
Ans: Sightly is an HTML templating language that became introduced in AEM 6.0. It is meant to take the location of JSP documents and is the desired templating system for HTML. The name sightly method “fascinating to the attention”, and its focus is to keep your markup lovely and maintainable.
Q6. Why is a Content Management System (CMS) required?
Ans: A content material management system is a bit of software program this is used to create and manipulate files and Web sites. Many websites are dynamic, so their content material needs to be up to date often. In order manipulate those modifications correctly, it is advise that a content material management machine be used. Which is why AEM is a content management machine.
Q7. What is RESTful?
Ans: Representational State Transfer (REST) is an architectural style and an method to communications that is regularly used inside the improvement of net offerings. It is predicated on a stateless, customer server, cacheable communications protocol. RESTful packages use HTTP requests to submit records, study facts, and delete facts.The six architectural constraints of REST are: uniform interface, stateless, cacheable, consumer server, layered device, and code on call for.
Q8. What are the blessings of using OSGI?
Ans: The main advantages of the usage of OSGI are:
It reduces the complexity of the system by having the whole lot in bundles.
It makes the components loosely coupled and clean to control considering they can be mounted, deleted, up to date, started, and stopped at run time.
It increases the overall performance of the system considering elements of the utility that are not in use, do now not need to be loaded within the memory.
Q9. What is the listener property in AEM?
Ans: The listener property in AEM for a element is used to define what takes place before or after an movement on the component. This is delivered through the usage of the “cq:listeners” node with a node sort of “cq:EditListenersConfig”. The listener property can also be added to any widget in AEM. In order to feature a listener to that widget you simply want to add to feature a node this is known as “listeners” with a sort of “nt:unstructured”. Then you just need to add toddler nodes to the “listeners” node which might be occasions of that widget. You can find a listing of events for every widget by using looking CQ Widget API documentation.
Q10. How do you load digital assets in dam?
Ans: You can add digital belongings to your dam via the use of the graphical consumer interface or thru WebDav get right of entry to. If you are the use of the graphical consumer interface, you'll simply browse for the selected documents you would really like to feature, and then cq will create the metadata for the ones property within the dam folder. You might generally use the WebDav alternative while you want to upload a huge wide variety or belongings right now.
Q11. How do you build a bundle via crxde?
Ans: You can construct a bundle through crxde by navigating to the supply folder of your assignment placed beneath “apps”. Once you try this, right click on on the “src” folder and pick out to create a package deal. This will open the wizard that will walk you via developing your package. It is usually recommended that you now not use crxde to create OSGI bundles for AEM. Instead you should be using Maven.
Q12. What is the purpose of the Activator.Java file?
Ans: The motive of the Activator.Java record is that it's miles to be notified any time there are package begin and stop activities for that package deal. The Activator.Java document is an optionally available listener elegance that is created whilst you create a package deal via crxde.
Q13. What is a CQ5 overlay/override factor?
Ans: The overlay/override issue is used while you want to apply an out of the container component in AEM and also you want to add extra features to it and also you need to exchange it throughout all times of that factor. For instance in case you want to add features to the out of the container “text” component, however you don’t want to create a brand new component, you will need to replicate the “textual content” issue from “libs/basis/additives” to “apps/basis/components” and keep the same folder shape this is used. When this is achieved, any adjustments that executed to this new element might be contemplated inside the out of the field “text” element, without converting the authentic code beneath “libs”. It is normally now not a great exercise to modify the original code, that's why CQ gives the capacity to apply overlays.
Q14. What is the difference among a conversation and a layout dialog?
Ans: A dialog is a key element of the element because they provide an interface for authors to configure and provide input to that element. This input could be saved at the web page stage in the jcr. A design dialog is a dialog so that it will simplest display while you are in design mode in AEM. The input this is obtained right here could be saved on the template level and could be accessed throughout the complete website.
Q15. What is extending a element?
Ans: Extending a factor is whilst you need to create a new component with a purpose to not override a base element, but will have the same features because the original so you can change or construct upon that component. In order to extend a issue, you must set“sling:resourceSuperType” of the issue to the bottom factor you would love to increase. By doing this, you may inherit the whole thing from the bottom element.
Q16. How does sightly vary from other templating structures?
Ans: Sightly differs from other templating structures in 3 ways. Sightly is secure with the aid of default, it offers separation of issues, Sightly is comfortable through default because it mechanically filters and escapes all variables being output to the presentation layer to prevent cross-website-scripting vulnerabilities. Sightly offers seperation of challenge due to the fact it's miles purposely limited to make certain that a actual programming language is used to express the corresponding good judgment. This is achieved via the Use-API pattern.
Q17. Can you create a page without a template?
Ans: Pages are usually created with the aid of deciding on a template for the web page when you create them within the Website console. However, a page can be created manually within the crxde by the use of the same properties which can be created while you make a web page within the Website console. For example, in crxde under the content folder, create a node with the subsequent type “cq:Page” and save it. Then upload a child node with the following kind “cq:PageContent”. Then you may upload the specified properties to show any additives you want displayed on the page. It is commonly now not top exercise to create pages manually.
Q18. What are xtypes and the way are they useful in AEM?
Ans: In the ExtJS language an xtype is a symbolic name given to a class. In AEM those xtypes are widgets that used inside the introduction of additives. AEM comes with a group of widgets which can be to be had out of the box. You also can create and outline your own xtype for use in AEM. An example of an xytpe is whilst you are creating your dialog to your element, and also you want the writer so that it will enter textual content, you will upload a “cq:Widget” that has an xtype belongings of “textfield”.
Q19. How do you upload properties to the Page Properties dialog?
Ans: You can add properties on your web page residences conversation via copying the dialog located underneath “libs/basis/components/page/dialog” and including it for your page template. This will let you add new tabs and upload new residences that you would really like the writer to chooses from for pages that use that template.
You may want to regulate the authentic page conversation as well to get the identical result, but it is not encouraged.
Q20. What is the distinction among the Author and Publish environment?
Ans: A production environment normally has difference times of AEM jogging. One is the writer instance, and the opposite is the publish instance. These times are commonly stored in two extraordinary settings. The writer instance is in which you may input and control content material for your website. This is in which you may administer your web page as well. The author surroundings is commonly kept in the back of a firewall. The post instance is wherein you will make your content to be had for your targeted target audience. The submit surroundings is usually kept in a Demilitarized Zone (DMZ).
Q21. What is a replication agent?
Ans: A replication agent is used to put up active content from the writer environment to the submit environment, to flush content from the dispatcher cache, and go back person input from the submit environment to the writer surroundings. The replication retailers are imperative to AEM.
Q22. What is resource mapping?
Ans: Resource mapping is used to outline redirects, arrogance URLs and virtual hosts for AEM. You can use resource mapping to prefix all requests with “/content” so the inner structure of the AEM web page is hidden from your visitors. You can also use aid mapping to outline a redirect so that each one requests to the gateway page of your website online are redirected to another web site.
Q23. What layout styles are used in AEM?
Ans: Since AEM is constructed the usage of OSGI, many of the design styles for OSGI are legitimate. Some of these layout patterns are Singleton (Service), Adapter Service, Resource Adapter Service, and Whiteboard. Also, considering AEM is modular, you need to be able to use any layout sample on your software.
Q24. What is reverse replication?
Ans: Reverse replication is the technique of replicating content material from post environment to the writer surroundings. In order to accomplish this you need a reverse replication agent to your creator instance this is configured to get content material from the submit environment outbox.
Q25. What is the generation stack utilized in cq5 or AEM (Adobe Experience Manager)?
Ans: Adobe CQ5 uses the subsequent technology:
JCR – Java specification for accessing a content material repository JSR-283 specification jcr 2.0, cq5 makes use of its very own implementation of jcr known as CRX. Apache Jackrabbit is an open-supply implementation of jcr 2.Zero specification.
Apache Sling – RESTful framework to get admission to a jcr over http protocol. It maps the request url to the node in jcr.
OSGi (Apache Felix) – Framework for modular software improvement using java. Each module known as package deal may be independently began and stopped. OSGi container which gives implementation instructions for OSGi framework.
Q26. What is a Template?
Ans: A CQ template allows you to define a regular style for the pages in your utility. A template incorporates of nodes that explain the web page shape.
Q27. What is a Component?
Ans: Components are re-usable modules that put in force unique utility logic to render the content material of your net website. You can think about a component as a collection of scripts (for instance, JSPs, Java servlets, and so on).
Q28. Where does the cache listing exists for CQ5?
Ans: The Dispatcher uses a Cache Directory for caching static content. The cached documents are created in the root of an internet-server.
Q29. Why a content control machine is required in CQ?
Ans: Now a days websites are very dynamic in nature, content needs to be updated very regularly, so, it is simpler to control the content of such websites the usage of a CMS.
Q30. What are the advantages of CQ5 over different CMS?
Ans: Below are the blessings of CQ5 over other CMS (Content control System):
Implementation of workflows for creating, modifying and publishing of content.
Managing a repository of digital belongings like snap shots, files and integrating them to the web sites.
Usage of search queries to locate content no matter where it is stored in your enterprise.
Setting up easily the social collaboration blogs, groups.
Tagging application to arrange the virtual property together with images.
Q31. What is a Template?
Ans: A CQ template permits you to define a constant style for the pages for your application. A template accommodates of nodes that specify the web page shape.
Q32. What is a Component?
Ans: Components are re-usable modules that put in force unique application logic to render the content material of your web website. You can think about a aspect as a group of scripts (for instance, JSPs, Java servlets, and so on).
Q33. Why we need to consist of worldwide.Jsp if we're creating a issue in jsp?
Ans: The global.Jsp script which adobe offers by default pronounces Sling, AEM and JSTL taglibs to make factor creation easy in AEM.
Q34. Which script you ought to include to show sidekick?
Ans: init.Jsp need to be protected in our jsp or script file to display sidekick.
Q35. What is using EditConfig node in growing a thing?
Ans: A cq: EditConfig node is used to outline the behavior of the issue
Q36. What are the primary SCR Annotations used for creating an OSGI component?
Ans: Basic SCR Annotation used for developing a component or provider in osgi are:
Component: defines the class as a factor.
Service: defines the service interface this is furnished by means of the aspect.
Reference: injects a provider into the factor.
Property: defines a assets that can be used inside the magnificence.
Q37. Difference among Dialog and Design Dialog?
Ans: Both conversation and layout conversation are utilized by the consumer to configure the component.
Design Dialog: of a factor can be visible/edited in layout mode of the web page. Design dialog is gift at template level so all of the page of the template will percentage same layout dialog.
Dialog: of a component is gift at page stage so every element example could have its own conversation and statistics entered in conversation might be saved below content folder.
Q38. Where dialog and design speak statistics is stored?
Design conversation data is stored below /and so forth./designs folder.
Dialog information is saved below /content material folder.
Q39. What is Adaptive Form? Explain Adaptive Form? What do you mean through Adaptive Form?
Ans: Adaptive paperwork, is used to break down a shape into logical sections, essentially it allows stop customers to attention on filling out the form. When we require to take enter from person we use Adaptive Form.