Вы находитесь на странице: 1из 13

Blog

Home (Https://Mindmajix.Com/) / Adobe CQ5 (AEM) (Https://Mindmajix.Com/Adobe-Cq5/)


/ Adobe CQ5 Interview Questions

Adobe CQ5 Interview Questions


 (5.0) | 28101 Ratings |  Last Updated January 08, 2019

 Bookmark  Email  28121

If you're looking for Adobe CQ5 Interview Questions & Answers for Experienced or Freshers, you are at right place.
There are lot of opportunities from many reputed companies in the world. According to research Adobe CQ5 has a
market share of about 0.4%. So, You still have opportunity to move ahead in your career in Adobe CQ5 Development.
Mindmajix offers Advanced Adobe CQ5 Interview Questions 2018 that helps you in cracking your interview & acquire
dream career as Adobe CQ5 Developer.

Are you interested in taking up for Adobe CQ5 Training Online? Enroll for Free Demo on
Adobe CQ5 Training (https://mindmajix.com/adobe-cq5-training)

Q1) Aem vs Sitecore

Features AEM Sitecore CMS

Cose 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
 Call us on  Drop us a Query
Single platform support Yes No

User Experience Good Good

Q2) Difference between Design Dialog and Edit Dialog

Both dialog and design dialog defines the UI interface for allowing the user to configure the component.

Design Dialog of a component can be seen/edited in design mode of the page. Design dialog is at template level so all
the page of the template will share 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 information
entered in the dialog will be stored under /content folder.

Q3) What is the purpose of clientlibs?

It is used for adding site specific js and css files to the page and also thridparty js and css files.

Q4) What is Dependency/Dependencies in client library?

It is a list of other client library categories on which this library folder depends. For example, given two
cq:ClientLibraryFolder nodes F and G, if a file in F requires another file in G in order to function properly, then at least
one of the categories of G should be among the dependencies of F.

Q5) What is embed and difference between dependency and embed in client library?

Embed: Used to embed code from other libraries. If node F embeds nodes G and H, the resulting HTML will be a
concetration of content from nodes G and H.

Dependency: Please refer to above answer.

Q6) Difference between package and bundle?

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 is a tightly coupled, dynamically loadable collection of classes, jars, and configuration files that
explicitly declare their external dependencies (if any).

Q7) Can you explain life cycle of OSGI bundle?

Following are the life cycle states of OSGI:

Installed: The bundle has been successfully installed.

Resolved: All Java classes that the bundle needs are available. This state indicates that the bundle is either ready to be
started or has stopped.

Starting: The bundle is being started, the BundleActivator.start method will be called, and this method has not yet
returned. When the bundle has an activation policy, the bundle will remain in the STARTING state until the bundle is
activated according to its activation policy.

Active: The bundle has been successfully activated and is running; its Bundle Activator start method has been called
and returned.

Stopping: The bundle is being stopped. The BundleActivator.stop method has been called but the stop method has not

yet returned.
 Call us on  Drop us a Query
Uninstalled: The bundle has been uninstalled. It cannot move into another state.

Q8) What is difference between parsys and iparsys?

parsys: It is called “Paragraph System” component in which you can add other components at page level.

iparsys: It is inherited paragraph system, which inherits parent page “paragraph system”.

Q9) What is process step in workflow?

It is a workflow component which can be found at – “/libs/cq/workflow/components/model/process”, this is used for


calling a java class in workflow.

Q10) Difference between CQ5.4 and CQ5.5?

Versions of CQ before 5.5 were based on a servlet container (CQSE, by default, though others could be used) running
with multiple webapps: One for the CRX content repository and one for the OSGi container which itself contained
Sling and AEM. The Sling webapp was bound to the root 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 end point. The CRX content repository is now just another OSGi service, alongside the
various services that comprise the rest of the AEM unctionality. These changes do not affect applications built on top
of AEM or Sling.

The new architecture means that the quickstart jar installation of AEM can no longer support other web applications
running alongside AEM. However, the war version of AEM is designed to be deployed in an application server, where
additional web applications can be deployed alongside it.

Added three new connectors to key adobe products – Creative Suite, Scene7, Search&Promote

Authors can directly work on mobile apps.

Partnered with hybris software to add some nice eCommerce capabilities.

Added Undo(Ctrl+z) and Redo(Ctrl+y) functionalities.

Q11) Role of Dispatcher in CQ5?

Dispatcher is CQ5 caching and/or load balancing tool. Dispatcher also helps to protect your AEM server from attack. It
cache responses from publish instance, to increase the responsiveness and security of your externally facing published
website

Q12) What is Replication? and What are the steps involved in Replication?

Replication is process of activating/publishing the page from Author Instance to Process Instance.

Steps involved in replication:

The author requests that certain content be published (activated); this can be initiated by a manual request, or by
automatic triggers which have been preconfigured.

The request is passed to the appropriate default replication agent; an environment can have several default agents
which will always be selected for such actions.

The replication agent “packages” the content and places it in the replication queue.

The content is lifted from the queue and transported to the publish environment using the configured protocol;

usually this is HTTP.
 Call us on  Drop us a Query
A servlet in the publish environment receives the request and publishes the received content; the default servlet is
https://localhost:4503/bin/receive.

Check Out Adobe CQ5 Tutorials (https://mindmajix.com/adobe-cq5)

Q13) What is difference between parbase and parsys?

parbase: The parbase allows components to inherit attributes from other components, similar to subclasses in object
oriented languages such as Java, C++, and so on. For example, when you open the /libs/foundation/components/text
node in the CRX Explorer, you see that it has a property named sling:resourceSuperType, which references the parbase
component. The parbase here defines tree scripts to render images, titles, and so on, so that all components sub
classed from this parbase can use this script.

parasys (Paragraph System): The paragraph system (parsys) is a compound 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 also a component, which contains the other paragraph
components.

Q14) Explain Multi Site Manager?

Multi Site Manager (MSM) enables you to easily manage multiple web sites that share common content. MSM lets you
define relations between the sites so that content changes in one site are automatically replicated in other sites.

For example, web sites are often provided in multiple languages for international audiences. When the number of sites
in the same language is low (three to five), a manual process for synchronizing content across sites is possible.
However, as soon as the number of sites grows or when multiple languages are involved, it becomes more efficient to
automate the process.

Q15) How to customize page property dialog?


Step 1 – Copy /libs/foundation/components/page/dialog node to template component’s node
Step 2 – Modify dialog node

Q16) Classes involved in URL Resolution?


 Call us on  Drop us a Query
You can check available script engines for rendering by accessing url HTTP://:/SYSTEM/CONSOLE/CONFIG/SLINGSCRIPTING.TXT

Q17) What is difference between live copy and language copy?

Live Copy – Copy created from existing site or blue print is called Live Copy. Rollout configurations for this Live Copy can be configured from
tools console.

Language Copy – Site which is created using language tool is called Language copy. Basically to create a site for different language.

Q18) Role of Persistence Manager in CQ5?

The persistence manager saves the repository content to a permanent storage solution, such as the file system or a database. By default,
CRX saves repository content to the Tar persistence manager. Following DB’s can be used for storing content – DB2, Oracle, SQL Server,
MySQL.

Q19) What is difference between c:import, sling:include and cq:include? What is the advantage of each tag?

c:import url=”redirect.jsp”

I assume this is the import tag of the Standard Tag Library. This tag is documented
atHTTP://JAVA.SUN.COM/PRODUCTS/JSP/JSTL/1.1/DOCS/TLDDOCS/C/IMPORT.HTML and does not know about Sling directly.

sling:include path=”trail” resourceType=”foundation/components/breadcrumb”

This is the include tag of the Sling JSP Tag library. This tag knows about Sling and also supports RequestDispatcherOptions.

cq:include path=”trail” resourceType=”foundation/components/breadcrumb” or cq:include script=”redirect.jsp”

This tag is Communique specific extension of the Sling JSP Tag library include tag. IIRC it supports callings scripts in addition to just including
renderings of resources.

In a Communiqué application, I would suggest to generally use the Communique or Sling include tag since this provides you more Sling
support.

You may use the JSTL import tag if you don’t have specific requirements for Sling extended features, plan to use the JSP (fragment) outside
of Call
 us on
Communique or if you want to further process the generated (imported) content with a reader or a variable.  Drop us a Query
Q20) How to connect to external Database?

To connect to external DB, a connection pool needs to be configured by creating a node of type sling:OsgiConfig. Below screen shot if for
connecting to hsqldatabase, but if you want to connect to other DB then properties values needs to be changed accordingly:

Use below code to get a connection:

DataSourcePool dspService = sling.getService(DataSourcePool.class);


DataSource ds = (DataSource) dspService.getDataSource(“hsqldbds”);

Q21) Explain DAM Renditions?

The DAM allows you to create renditions of an image that include different sizes and versions of the same asset. You can use those
renditions in the content of your website, and that can be helpful when you need to create thumbnails or smaller views of large, high-
resolution images. When you are creating multi-device websites where Internet bandwidth is a varying concern, this feature becomes even
more important. After all, you want to minimize the size of any files a site visitor has to download to view your site. Making your site load
faster improves your search engine optimization and the user experience.

Q22) What is CQ5? Why Content Management System is Reqiured? Advantages of CQ5 over other CMS?

CQ5 is a java based content management system from adobe, previously Day CQ5

1. It is based on a content repository(i.e it uses a content repository to store the content of a website) and use JCR(java content
repository) specification to access the content repository.

2. It uses RESTfulApache Sling framework to map request url to the corresponding node in content repository

3. It uses powerful OSGi framework internally to allow modular application development. It means individual pieces of your
application(called bundles in terms of OSGi) can be independently started and stopped. 
 Call us on  Drop us a Query
CQ5 uses Apache Felix as the OSGi container. Therefore different parts of cq5 can be independently started and stopped.
Why a content management system is required? Some websites are very dynamic in nature, content needs to be updated frequently, so it is
easier to manage the content of such websites using a CMS.

Advantages of CQ5 over other CMS:

Implementation of workflows for creating, editing and publishing of content


Managing a repository of digital assets like images, documents and integrating them to the websites.

Usage of search queries to find content no matter where it is stored in your organization.
Setting up easily the social collaboration blogs, groups.
Tagging utility to organize the digital assets such as images.

Q23) What is the technology stack of cq5?

Cq5 uses the following technologies :

JCR – java specification for accessing a content repository JSR-283 specification jcr 2.0 , cq5 uses its own implementation of jcr called
CRX. Apache Jackrabbit is an open-source implementation of jcr 2.0 specification.

Apache Sling – RESTful framework to access a jcr over http protocol. It maps the request url to the node in jcr.

OSGi(Apache Felix) – framework for modular application development using java. Each module called bundle can be independently
started and stopped.OSGi container which provides implemention classes for OSGi framework.


 Call us on  Drop us a Query
Q24) What is a content repository? What is JCR?

A Content repository is basically a place where digital content is stored. Generally the structure of the content repository is hierarchial and
represented as a tree structure where each node of the tree is used to store content.

Java Content Repository is a specification provided by the java community to access the content repository in a uniform way (platform
independent and vendor independent way). The specification was initially released as JSR-170(JCR 1.0) and then later revised version 2 as
(JCR-283).The javax.jcr API provides the various classes and interfaces to access a content repository.

Explore Adobe CQ5 Sample Resumes! Download & Edit, Get Noticed by Top Employers!
Download Now! (https://mindmajix.com/adobe-cq5-sample-resumes)
Q25) What is REST? What is a RESTful Framework?

REST stands for Representational State Transfer.REST-style architectures consist of clients and servers. Clients initiate requests to servers;
servers process requests and return appropriate responses. Requests and responses are built around the transfer of representations of
resources. A resource can be essentially any coherent and meaningful concept that may be addressed. A representation of a resource is
typically a document that captures the current or intended state of a resource.

Apache Sling is RESTful framework to access a java content repository over http protocol.

Q26) What is the role of Dispatcher in CQ5?

Dispatcher is a CQ5 tool for caching and load-balancing. It has 2 responsibilities.

Caching – To cache as much content as possible, so that it doesnt need to access layout engine frequently for generating content
dynamically.

Load-balancing – To increase the performance by load-balancing.

Q27) What is Replication in CQ5?

Publish (activate) content from author to publish environment.

Explicitly flush content from the dispatcher cache.

Return user input from the publish environment to the author environment.

REPLICATION PROCESS:

First, the author requests that certain content to be published (activated).

The request is passed to the appropriate default replication agent.

Replication agent packages the content and places it in the replication queue.

The content is lifted from the queue and transported to the publish environment using the configured protocol.

A servlet in the publish environment receives the request and publishes the received content, the default servlet is

HTTP://LOCALHOST:4502/BIN/RECEIVE.

Q28) What is Reverse Replication?

Reverse replication is used to get user content generated on a publish instance back to the author instance. To do this you need a reverse
replication agent in the author environment. This act as the active component to collect information from the outbox in the publish
environment.

Q29) Difference between Dialog and Design Dialog?
 Call us on  Drop us a Query
Dialog is a key element of your component as they provide an interface for authors to configure and provide input to that component. The
user input will be stored at page level.
Design dialog will share the content at the template level. Also we can dynamically change the content in design mode.

Q30) Explain OSGi[Open Systems Gateway initiative] in CQ5 ?

Dynamic module system for Java.

Universal Middleware Category.

Helps applications to be constructed from small, reusable and collaborative components.

OSGi bundles can contain compiled Java code, scripts, or any contents to be loaded in the repository.

Helps the bundles to be loaded, installed.

Q31) How bundles are loaded and installed in CQ5?

This is managed by the Sling Management Console of CQ5.

Q32) How clustering is done in CQ5?

CQ5 CRX is pre-loaded to run within a cluster,even when running a single instance. Hence the configuration of multi-node clusters with little
effort happens in CQ5.

Q33) What is the contribution of Servlet Engine in CQ5?

Servlet Engine pretends as a server within which each CQ (and CRX if used) instance runs. Even though you can run CQ WCM without an
application server, always a Servlet Engine is needed.

Q34) Explain the role of Dispatcher in CQ5?

In CQ5 Dispatcher helps to cache and load-balance. The main responsibilities are,

Caching – Cache as much content as possible[ It helps to reduce the continuous functioning of layout engine frequently for generating
content when in dynamic.

Load-balancing – To increase the performance by load-balancing.

Q35) State various strategies used by Dispatcher?

Cache as much content as possible as static pages.

Accessing layout engine as little as possible.

Q36) Explain the methods of Caching adopted by Dispatcher?

Dispatcher invalidates those pages whose content has been updated and replaces it with new content.

Auto-Inavidation automatically removes the contents which are not relevant.

Q37) How you can inherit properties of one dialog to another dialog?

For inheriting properties we have to create two components with unique names in the base component dialog. For eg. If your plan is to have
two rich text two rich text areas in the dialog of components that inherit from the base, then you must include two rich text areas with unique
names in the base component dialog. In any case every input field of a dialog must have a unique name, else they will point to the same
property path relative to the jcr:content node of the component when used on a page.

 CallCan
Q38) us on
we restrict for certain users not to display some digital assets?  Drop us a Query
You can always limit who can access certain folders in CQ Digital Assets by making the folder part of a CUG(closed user group).

Steps to make a folder part of a CUG:

In CQ DAM, right-click the folder you want to add closed user group properties for and select Properties.

Click the CUG tab.

Select the Enabled check box to make the folder and its assets available only to a closed user group.

Browse to the login page, if there is one, to add that information. Add admitted groups by clicking Add item. If necessary, add the realm.
Click OK to save your changes.

Q39) Difference between OSGi bundle and Normal Jar file?

OSGi bundles are jar files with metadata inside. Much of this metadata is in the jar’s manifest, found at META-INF/MANIFEST.MF. This
metadata, when read by an OSGi runtime container, is what gives the bundle its power.

With OSGi, just because a class is public doesn’t mean you can get to it. All bundles include an export list of package names, and if a
package isn’t in the export list, it doesn’t exist to the outside world. This allows developers to build an extensive internal class hierarchy
and minimize the surface area of the bundle’s API without abusing the notion of package-private visibility. A common pattern, for instance,
is to put interfaces in one package and implementations in another, and only export the interface package.

All OSGi bundles are given a version number, so it’s possible for an application to simultaneously access different versions of the same
bundle (eg: junit 3.8.1 and junit 4.0.). Since each bundle has it’s own classloader, both bundles classes can coexist in the same JVM.

OSGi bundles declare which other bundles they depend upon. This allows them to ensure that any dependencies are met before the
bundle is resolved. Only resolved bundles can be activated. Because bundles have versions, versioning can be included in the
dependency specification, so one bundle can depend on version junit version 3.8.1 and another bundle depend on junit version 4.0.

In OSGi bundle, there will be an Activator.java class in OSGi which is an optional listener class to be notified of bundle start and stop
events.

List of Other Adobe Certification Courses:

Adobe CQ5 (https://mindmajix.com/adobe- Adobe CQ5 System Administrator (https://mindmajix.com/adobe-


cq5-training) cq5-system-administrator-training)

Adobe Analytics Adobe Marketing Cloud (https://mindmajix.com/adobe-marketing-


(https://mindmajix.com/adobe-analytics- cloud-training)
training)

Adobe Creative Cloud Adobe Analysis Workspace (https://mindmajix.com/adobe-analysis-


(https://mindmajix.com/adobe-creative- workspace-training)
cloud-training)

Adobe Target Adobe Audience Manager (https://mindmajix.com/adobe-audience-


(https://mindmajix.com/adobe-target- manager-training)
training)

Adobe Experience Manager Adobe Dynamic Tag Management (https://mindmajix.com/adobe-


(https://mindmajix.com/adobe-experience- dynamic-tag-management-training)
manager-training)

Subscribe For Free Demo 


 Call us on  Drop us a Query
Phone *

E-mail Address *

SUBSCRIBE

Free Demo for Corporate & Online Trainings.

(https://www.dmca.com/Protection/Status.aspx?ID=5b159fca-d195-4289-83e3-
b69a0818b38d&refurl=https://mindmajix.com/adobe-cq5-interview-questions)

Social Share

   
(https://www.facebook.com/sharer/sharer.php?
(https://twitter.com/home?
(https://plus.google.com/share?
(https://www.linkedin.com/shareArticle?
u=https://mindmajix.com/adobe-
status=https://mindmajix.com/adobe-
url=https://mindmajix.com/adobe-
mini=true&url=https://mindmajix.com/adobe-
cq5- cq5- cq5- cq5-
PREVIOUS
interview- (HTTPS://MINDMAJIX.COM/ORACLE-WORKFLOW-INTERVIEW-QUESTIONS)
interview-interview-interview- NEXT (HTTPS://MINDMAJIX.COM/ORACLE-WEBCENTER-INTERVIEW-
questions)
questions)
questions)
questions&title=https://mindmajix.com/adobe-
cq5-
interview-
questions&summary=&source=)

DROP US A QUERY

Full Name

E-mail Address

Course Name

US +1 - Phone Number *

Message

I'm not a robot


reCAPTCHA
Privacy - Terms

CONTACT US

Categories 
 Call us on  Drop us a Query
 Apache Scala (https://mindmajix.com/apache-scala/)

 MEAN Stack (https://mindmajix.com/mean-stack/)

 Oracle BI Publisher (https://mindmajix.com/oracle-bi-publisher/)

 SAP BODS (https://mindmajix.com/sap-bods/)

 IBM Unica Campaign (https://mindmajix.com/ibm-unica-campaign/)

 SERVICENOW (https://mindmajix.com/servicenow/)

 SAP ABAP on HANA (https://mindmajix.com/sap-abap-on-hana/)

 Oracle HRMS (https://mindmajix.com/oracle-hrms/)

 .NET (https://mindmajix.com/net/)

 WORDPRESS (https://mindmajix.com/wordpress/)

VIEW MORE (HTTPS://MINDMAJIX.COM/BLOG-CATEGORY)

Popular Courses in 2019

AngularJS Training (https://mindmajix.com/angularjs-training)



 3766 Learners

DevOps Training (https://mindmajix.com/devops-training)



 2925 Learners

Salesforce Training (https://mindmajix.com/salesforce-training)



 2357 Learners

Mindmajix - Online global training platform connecting individuals with the best trainers around the globe. With the diverse
range of courses, Training Materials, Resume formats and On Job Support, we have it all covered to get into IT Career.
Instructor Led Training - Made easy.

 (https://www.facebook.com/MindMajixTechnologies)  (https://twitter.com/mindmajix)  (https://plus.google.com/+MindmajixTechnologies)

 (https://www.linkedin.com/company/mindmajix-technologies-pvt-ltd-)  (https://www.youtube.com/channel/UCkKemMaRnFPlNLHZ0zOYfpA)

Company

Home (https://mindmajix.com/) 
Call usUs
About on(https://mindmajix.com/about)  Drop us a Query
Courses (https://mindmajix.com/all-courses)

Sample Resumes (https://mindmajix.com/sample-resumes)

Blog (https://mindmajix.com/blog)

Contact Us (https://mindmajix.com/contact)

Reviews (https://mindmajix.com/reviews)

Write for us (https://mindmajix.com/write-for-us)

Trending Courses

Tableau Training (https://mindmajix.com/tableau-training)

Oracle DBA training (https://mindmajix.com/oracle-dba-training)

Qlikview Training (https://mindmajix.com/qlikview-training)

Docker Training (https://mindmajix.com/docker-training)

JBoss Training (https://mindmajix.com/jboss-training)

Informatica Training (https://mindmajix.com/informatica-training)

Cassandra Training (https://mindmajix.com/apache-cassandra-training)

Blockchain Training (https://mindmajix.com/blockchain-training)

Contact info

 244 Fifth Avenue, Suite 1222 New York(NY) United States (US) - 10001

 USA : +1 917 456 8403

 info@mindmajix.com (mailto:info@mindmajix.com)

 #811, 10th A Main, Suite No.506 1st Floor, Indira Nagar Bangalore, India - 560038

 India : +91 905 240 3388

 info@mindmajix.com (mailto:info@mindmajix.com)

Copyright © 2019 Mindmajix Technologies Inc. All Rights Reserved


Privacy Policy (https://mindmajix.com/terms-of-service-and-privacy-policy)
Terms of use (https://mindmajix.com/terms-of-service-and-privacy-policy)
Refund Policy (https://mindmajix.com/terms-of-service-and-privacy-policy)

 Call us on  Drop us a Query


 Call us on  Drop us a Query

Вам также может понравиться