This is part three of my AEM interview questions. You find the other parts here:
Part 1 - Part 2 - Part 4 - Part 5 - Part 6 - Part 7 - Part 8 - PDF
Here are some more AEM interview questions that could come up during a technical interview:
Q: How do you build a bundle through crxde?
A: You can
build a bundle through crxde by navigating to the source folder of your project
located under “apps”. Once you do this, right click on the “src” folder and
choose to create a bundle. This will open the wizard that will walk you through
creating your bundle.
It is recommended that you no longer use crxde
to create OSGI bundles for AEM. Instead you should be using Maven.
Q: What is the purpose of the Activator.java file?
A: The purpose
of the Activator.java file is that it is 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 is created when you create a bundle through crxde.
Q: What is a CQ5 overlay/override component?
A: The
overlay/override component is used when you want to use an out of the box
component in AEM and you want to add extra features to it and you want to
change it across all instances of that component. For example if you want to
add features to the out of the box “text” component, but you don’t want to
create a new component, you would want to copy the “text” component from
“libs/foundation/components” to “apps/foundation/components” and keep the same
folder structure that is used.
When this is done, any changes that 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 a good practice to
modify the original code, which is why CQ offers the ability to use overlays.
Q: What is the difference between a dialog and a design dialog?
A: A dialog is
a key element of the component because they provide an interface for authors to
configure and provide input to that component. This input will be stored at the
page level in the jcr.
A design dialog is a dialog that will only
display when you are in design mode in AEM. The input that is received here
will be stored at the template level and will be accessed across the whole
site.
Q: What is extending a component?
A: Extending
a component is when you want to create a new component that will not override a
base component, but will have the same features as the original so that you can
change or build upon that component.
In order to extend a component, you must set the
“sling:resourceSuperType” of the component to the base component you would like
to extend. By doing this, you will inherit everything from the base component.
I plan to add more interview questions to this blog, so make sure to check back.
I hope you enjoyed this post. Please feel free to post any comments below.