A content author will be using live copies on AEM.
Which two factors must the content author now consider? (Choose two.)
- A . When the inheritance Is re-enabled, the page is automatically synchronized with the source.
- B . When (everting a canceled inheritance on a paragraph system, the order of components will be automatically restored from the blueprint.
- C . If the component is marked as a container, the cancellation and suspend actions do not apply to Its child components.
- D . Changes made locally to a component marked as a container will not be overwritten by the content of the blueprint on a rollout.
A, D
Explanation:
In Adobe Experience Manager (AEM), when dealing with live copies, a content author must be aware of various factors related to the synchronization of content between the source (blueprint) and the live copies. Option A is correct because when inheritance is re-enabled on a live copy page, synchronization with the blueprint page occurs, which may include automatic updates to the live copy page’s content. Option D is also correct because local changes made to a component marked as a container are protected during rollouts, meaning that these local changes will not be overwritten by content from the blueprint. The container concept in AEM allows for more granular control over which parts of the page are updated during synchronization.
For Option B, the term ‘paragraph system’ seems incorrect. It should likely refer to ‘paragraph systems’ as in the ParSys (Paragraph System), a component that allows authors to add components to a page. There is no automatic restoration of the order of components from the blueprint upon re-enabling canceled inheritance; instead, components are managed according to the rules set in the rollout configurations.
Option C is incorrect because the cancel and suspend actions can be applied to individual child components within a container. When inheritance is canceled for a container, the inheritance status of child components within that container can be controlled individually.
A developer wants to be able to execute the following query:
SELECT
*
FROM [ntbase] AS s
WHERE
s.status =’STARTED’
Which two options are mandatory additions to the Index? (Choose two.)
- A . ntbase index rule
- B . status properly with property Index = false
- C . ntbase aggregate
- D . status property with propertylndex = true
A, D
Explanation:
When creating a custom query in AEM’s JCR (Java Content Repository), the query’s performance is highly dependent on the indexing configuration. For the given query that selects all nodes with a ‘status’ property equal to ‘STARTED’ from the ‘nt:base’ node type, the index must be set up correctly: Option A, "nt:base index rule", is correct. The index rule for ‘nt:base’ must be added to define which properties of nodes of this type are indexed.
Option D, "status property with propertyIndex = true", is also correct. This index ensures that queries filtering on the ‘status’ property are executed efficiently. The property index should be set to true, which means that this property is indexed and the query will use this index to filter the results. Option B is incorrect because setting the property index to false would mean that the property is not indexed, making the query less efficient since the repository would need to scan each node to find matches.
Option C, "nt:base aggregate", is not mandatory. Aggregates are used to include properties of related nodes in the index, but they are not required for a simple property match like the one in the given query.
Given this configuration property:
Which page will be cached on the dispatcher?
- A . /myproduct/myrecipe. htmI’search=searchparam
- B . /myproduct/myrecipe. html?search- s&ordet=asc&brand=ad
- C . /myproduct/myrecipe. html?brand=mybrand
C
Explanation:
Given the dispatcher configuration snippet provided in the image, we can understand the URL
patterns that will be ignored (not cached) by the dispatcher. The configuration under /ignoreUrlParams shows patterns to match query parameters in the URLs:
/0001 { /glob "*" /type "deny" } means that by default, all query parameters are ignored (not cached).
/0002 { /glob "search" /type "allow" } specifically allows caching for URLs with the ‘search’ parameter.
/0003 { /glob "order" /type "allow" } specifically allows caching for URLs with the ‘order’ parameter.
Based on this, let’s evaluate the options:
A) /myproduct/myrecipe.html?search=searchparam ― This URL will not be cached because the ‘search’ parameter is allowed, but the actual value ‘searchparam’ does not match any allow pattern.
B) /myproduct/myrecipe.html?search=s&order=asc&brand=ad ― This URL will not be cached because although ‘search’ and ‘order’ parameters are allowed, the ‘brand’ parameter is not allowed according to the configuration.
C. /myproduct/myrecipe.html?brand=mybrand ― This URL will be cached because there are no allowed parameters, so the default deny does not apply, and the page can be cached without considering the ‘brand’ parameter.
Therefore, the page that will be cached on the dispatcher is the one in option C, as it does not contain any of the explicitly allowed query parameters (‘search’ or ‘order’), and all other parameters are ignored by default.
A developer wants to see debug logs for SAML.
Which logger must be created for this purpose?
- A . com.adobe.granlte.debug.auth.saml
- B . com.adobe.sling.auth.saml
- C . com. adobe, granite.aulh.saml
C
Explanation:
The correct logger to be created for debugging SAML (Security Assertion Markup Language) within AEM (Adobe Experience Manager) is the one pertaining to the Granite platform, which is part of AEM’s internal framework dealing with authentication. The Granite framework provides services that include user, group, and permission management, and is integral to AEM’s SAML authentication process. Thus, the logger com.adobe.granite.auth.saml is the appropriate logger that should be created and configured to capture and display debug logs related to SAML authentication processes.
A developer has to enable the indexing of multiple properties asynchronously.
Which type of index would the developer use?
- A . Property
- B . Lucene
- C . Ordered
B
Explanation:
In AEM, Lucene is often used for indexing due to its powerful full-text search capabilities, and it also supports asynchronous indexing. Asynchronous indexing allows the system to handle other tasks while indexing is being processed in the background, which can improve performance and scalability. This is especially useful when multiple properties need to be indexed without impacting the immediate response times of the system. Therefore, when a developer needs to enable the indexing of multiple properties asynchronously, a Lucene index is the most suitable choice.
A developer wants to send a SAML Authentication Request to a specific URL of a system entity that creates, maintains, and manages identity information.
Which property of SAML Authentication Handler configuration must be configured with this URL?
- A . Identity Provider URL
- B . Path
- C . Default Redirect
A
Explanation:
Within the SAML (Security Assertion Markup Language) Authentication Handler configuration in AEM, the property that must be configured with the URL of a system entity that manages identity information is the Identity Provider URL. The Identity Provider (IdP) is a core component of the SAML specification that is responsible for issuing authentication assertions and managing user identity information. Configuring the Identity Provider URL in the SAML Authentication Handler ensures that the authentication requests are directed correctly to the IdP.
Which two methods are used to update the cache? (Choose two.)
- A . Content Updates
- B . Restart on AEM Author Instance
- C . Restart on AEM Publish Instance
- D . Auto-invalidation on the Dispatcher
A, D
Explanation:
Updating the cache in AEM is critical to ensure that users receive the most current content without unnecessary delays.
Two common methods used to update the cache include:
A) Content Updates – Content updates can trigger an invalidation or flush of the cache. When content is published or updated on the AEM author instance and replicated to the publish instance, the dispatcher cache can be set to automatically invalidate the affected pages. This ensures that the next request to these pages serves the latest content.
D) Auto-invalidation on the Dispatcher – The dispatcher can be configured to automatically invalidate cached content under certain conditions, such as when a TTL (Time To Live) expires or when specific actions occur, such as a page activation or deactivation. This is often preferred to manual cache clearing as it can be more efficient and targeted to the specific content that has changed.
Options B and C are incorrect because restarting the AEM Author or Publish instances does not directly relate to cache update methods. These actions are more associated with system maintenance or updates and would not be standard practice for updating cached content.
What is the out-of-the-box response of the dispatcher when requesting a URL which is defined as deny in /filter setting of the dispatcher?
- A . 400
- B . 404
- C . 403
C
Explanation:
When the dispatcher encounters a URL that is defined as ‘deny’ in the /filter settings, the out-of-the-box response is typically a 403 Forbidden error. This HTTP status code indicates that the server understands the request but refuses to authorize it. This means the dispatcher configuration has rules set up to explicitly prevent access to certain patterns of URLs, and when such a pattern is matched, it will deny the request, resulting in a 403 response.
The SAML Authentication Handler is disabled by default, and the developer wants to enable this handler
Which two properties must be at least one of the configured properties? (Choose two.)
- A . IDPURL
- B . Password of Key Store
- C . Identity Provider POST URL
- D . Service Provider Entity ID
A, D
Explanation:
To enable the SAML (Security Assertion Markup Language) Authentication Handler in Adobe Experience Manager (AEM), certain critical properties need to be configured to establish the necessary trust and communication between the Identity Provider (IdP) and the Service Provider (SP, which in this case is AEM).
A) IDPURL (Identity Provider URL) – This property is essential for configuring the SAML Authentication Handler as it specifies the URL of the Identity Provider. This URL is used by AEM to redirect authentication requests to the IdP. It is crucial for initiating the SAML SSO (Single Sign-On) process.
D) Service Provider Entity ID – This is a unique identifier for the Service Provider (AEM in this context). It is used by the Identity Provider to recognize the Service Provider. The Entity ID is a key component of the SAML assertions and is used to ensure that the SAML responses are directed to the correct entity.
B) Password of Key Store is important for securing the communication between IdP and SP by encrypting the SAML assertions, but it is not mandatory for the basic enablement of the SAML Authentication Handler.
C) Identity Provider POST URL is used in scenarios where the SAML response from the IdP is sent via HTTP POST. While it’s important for the SAML configuration, the initial enablement and basic functionality of the SAML Authentication Handler primarily depend on the IdP URL and the SP Entity ID.
What is the correct resource type of the configuration node?
- A . cq:Configuration
- B . slingOsgiConfig
- C . cq:OsgiConfig
B
Explanation:
In Adobe Experience Manager, the correct resource type for an OSGi configuration node is sling:OsgiConfig. This resource type is used to define nodes in the repository that represent OSGi configurations.
These configurations can then be read by OSGi components within AEM to configure their behavior according to the defined properties.
Option A, cq:Configuration, is not used for OSGi configuration nodes. It might be used within the context of Context-Aware Configuration but not for defining OSGi configurations.
Option C, cq:OsgiConfig, is not a valid resource type for OSGi configurations in AEM. The correct namespace for OSGi configurations in AEM is sling, hence sling:OsgiConfig.
Which configuration on the dispatcher allows the cache of the request with an authorization header?
- A . /allowAuthonzed
- B . /cacheAuthorized "true"
- C . /invalidate authorization’
B
Explanation:
In the dispatcher configuration, to allow the caching of requests with an authorization header, the property /cacheAuthorized "true" must be set. By default, the dispatcher does not cache responses to requests that include authorization headers to prevent private or user-specific data from being incorrectly cached and served to other users. Setting this property to true overrides the default behavior, enabling the cache to store and serve responses even for requests that contain an authorization header.
An author wants to define a blueprint configuration to identify an existing website that will be used as the source for one or more live copy pages.
Which two structure rules must the content author follow? (Choose two.)
- A . The root of each language branch has at least two child pages
- B . The immediate child pages of the root are language branches of the web site.
- C . Each language page must have a country child page.
- D . The web site should have a single page as the root.
B, D
Explanation:
When defining a blueprint configuration in AEM, the content author must adhere to certain structure rules to ensure the proper functioning of the live copy mechanism.
The rules include:
B) The immediate child pages of the root are language branches of the website – This structure is commonly used in AEM to organize content according to language and regional variations, allowing for more manageable and scalable content management across different locales.
D) The website should have a single page as the root – Having a single root page for a website is a standard practice in AEM as it simplifies the content hierarchy and provides a clear entry point for the site structure. This root page then serves as the source for live copies.
Options A and C are not strict requirements for a blueprint configuration. AEM does not mandate that the root of each language branch has at least two child pages or that each language page must have a country child page. These decisions are usually based on the specific content structure and organizational needs of the website.
Which two configurations will be applied if an instance starts with the run modes author, dev, and emea7 (Choose two.)
- A . /apps/Vconfig.emea
- B . /config/author.dev.emea.noldap
- C . /apps/Vconfig.tesl.dev
- D . /apps/Vconfig.author.emea.dev
B, D
Explanation:
When an AEM instance starts with specified run modes, it selects configurations from the repository that match those run modes. Run modes allow for flexible management of settings and configurations across different environments. For the instance started with ‘author’, ‘dev’, and ’emea’ run modes, it would apply configurations from paths that match these run modes.
Option B, /config/author.dev.emea.noldap, is correct. This path matches all three run modes specified and would, therefore, be included.
Option D, /apps/mysite/config.author.emea.dev, is also correct. This path matches the run modes and would be applied to the instance as well.
Options A and C do not match all three run modes and therefore would not be applied.
A developer needs to extend a complete dialog from the core component, except for one tab.
Which property can be used to achieve this goal?
- A . jcrhideProperty
- B . slingorderBefore
- C . sling;hldeResource
C
Explanation:
In AEM, when you need to extend a dialog from a core component but want to hide or exclude one tab or part of the dialog, you can use the sling:hideResource property. This property allows you to selectively hide resources (like a tab in a dialog) inherited from a super type (the core component) in your overlay or custom component.
A developer has created a custom workflow model which includes a JAVA-based custom process step. During the creation of this custom process step, some data has been saved in metadata programmatically for subsequent workflow steps.
Which code snippet can be used to save this metadata in JAVA code7
- A . MetaDataMap wfd : Workltem.getMetaDataMap(); 1 wfd.putCmykey", ‘My Step Value*);
- B . MelaDataMap wfd = Workltem.getWorkflow().getMetaDataMap(); wfd.put(‘mykey", "My Step Value*);
- C . MelaDataMap wfd =
Workltem.getWorkflow().getWorkflowData().getMetaDataMapO; wfd.putf’mykey". ‘My Step Value*);
C
Explanation:
When working with custom workflow steps in AEM, metadata associated with the workflow session can be programmatically accessed and manipulated. The MetaDataMap object serves as a container for this data.
The correct way to access and modify this metadata in Java would be:
Option C, MetaDataMap wfd = WorkItem.getWorkflow().getWorkflowData().getMetaDataMap(); wfd.put("mykey", "My Step Value"); This snippet correctly retrieves the MetaDataMap from the WorkflowData of the current Workflow session. It then uses the put method to store a new key-value pair, where "mykey" is the key and "My Step Value" is the value to be saved.
Options A and B do not properly chain the method calls to access the MetaDataMap associated with the current workflow session and are therefore incorrect.
While configuring a Content Fragment Component, the author has selected ‘Display Mode’ as ‘Single Text Element’. This enables the selection of one multiline text element and enables paragraph control options.
Which two properties will now determine the resulting action? (Choose two.)
- A . Paragraph Description
- B . Paragraph Heading
- C . Paragraph Range
- D . Paragraph Scope
C, D
Explanation:
When the ‘Display Mode’ is set to ‘Single Text Element’ in the configuration of a Content Fragment Component in AEM, the properties that will determine the resulting action are related to how the text is displayed and managed in terms of paragraphs.
C) Paragraph Range ― This property would determine the range of paragraphs to display from the multiline text element.
D) Paragraph Scope ― This property would define the scope of the paragraph, such as whether all paragraphs are included or just a specific subset.
Options A (Paragraph Description) and B (Paragraph Heading) are not directly related to the action of displaying a single text element with paragraph control.
A developer needs to use AEM Core Components in production mode (without sample content). The developer would like to do this without needing to download and install the core components before using them.
Which AEM version would the developer use?
- A . Version 6.3
- B . Adobe Managed Services
- C . AEM as a Cloud Service
C
Explanation:
AEM as a Cloud Service includes the latest AEM features out-of-the-box, including AEM Core Components, which are production-ready without the need for additional downloads or installations of sample content. This version of AEM has a continuous delivery model, ensuring that the most up-to-date features and components are readily available.
Option A, Version 6.3, is incorrect because this version would require the manual download and
installation of core components.
Option B, Adobe Managed Services, is not a version of AEM, but rather a hosting option that could include various versions of AEM.
A developer wants to render Hello World’ only in edit mode.
Which approach would be used?
- A . <p data-sly-test=’${wcm. edit}" >Hello World</p>
- B . <p data-sly-test=*${wcmmode.edit}’>Hello World</p>
- C . <p data-sly-test=’${wcmmode editor}’>Hello World</p>
B
Explanation:
In AEM, the Sightly/HTL scripting language is used to develop robust and secure components. To render content conditionally based on the WCM (Web Content Management) mode, the wcmmode object is used. The correct property to check if the current mode is edit is wcmmode.edit. The HTL syntax for testing a condition is data-sly-test followed by the condition in ${}. The option B correctly uses this syntax to test if the WCM mode is edit, and if so, renders "Hello World". Option A uses wcm.edit which is not the correct object property.
Option C uses wcmmode editor which is not the correct property and the syntax has a typo (should be data-sly-test).
A content author has this OSGI component:
How can the content author use the Apache Felix Web OSGi console to disable the servlet?
- A . Select the Bundle Resource Provider tab > Check that the OSGi component is listed > Click disable Action button
- B . Select the Services tab > Check that the OSGi component is listed > Click disable Action button
- C . Select the Components tab > Check that the OSGi component is listed > Click disable Action button
C
Explanation:
In the Apache Felix Web Console, which is the OSGi management console of AEM, components are managed under the "Components" tab. The provided OSGi component, a servlet in this case, can be disabled by navigating to the "Components" tab, where all the active components are listed. Once the specific servlet is located, it can be disabled by clicking on the "Disable" action button associated with that component. This does not remove the servlet from the system; it simply stops it from being active.
Option A is incorrect because the "Bundle Resource Provider" tab does not deal with enabling or disabling of components.
Option B is also incorrect because the "Services" tab provides information about services but does not provide a direct way to disable them.
Review the following HTL code snippet:
<div data-sly-
use.testComponent=’${com.adobe.core.models.TestComponent’@ testParam=’testValue’}’></div>
Which two approaches correctly read the value of testParam in Sling model? (Choose two.)
- A . @lnject @Sourcef’request-aItribuIes") @Named{"testParam’)
- B . @RequestAttribute(name = "leslParam")
- C . @lnject(name = ‘testParam’)
- D . @lnjecT @Prop("testParam")
BC
Explanation:
In Sling Models, annotations are used to map request parameters, attributes, and properties to fields in Java classes. When an HTL script passes parameters to a Sling Model, the Sling Model can use annotations to access these parameters.
Option B uses the @RequestAttribute annotation which allows the Sling Model to retrieve an attribute that has been set on the Sling HTTP request object. This is a valid approach to read the ‘testParam’ if it has been set as a request attribute.
Option C uses the @Inject annotation with the name attribute specifying the name of the parameter to inject. This is another valid approach to read the ‘testParam’ from the request.
Option A is incorrect because @Named is not the correct annotation for retrieving request attributes or parameters.
Option D is incorrect because there is no @Prop annotation in Sling Models; it’s likely confused with the @Property annotation which is not the correct one for this context either.