May 13, 2020
Estimated Post Reading Time ~

Request Resolution in Adobe AEM

Before trying to understand request resolution, take a look at URL decomposition to see how the URL is decomposed.

The process looks like this:

a) After the URL Decomposition process, the following URL properties are extracted:
Protocol
Host
Path
Selector(s)
Extension
Suffix Param(s)
b) The `path` component of the URL is matched against a node in `content` folder

c) If the node is found, it uses one of the following properties to try to locate the resource:
`sling:resourceType`
`sling:resourceSuperType`
`jcr:primaryType`
d) Using the value of one of the above properties, it tries to locate this resource under one of these folders:
`apps`
`libs`
e) When it finds the correct folder, it chooses a node with the best match based on some of the URL properties:
`Selector`
`Extension`
`Method`



Best match
Suppose a request with the following characteristics:

a) Method GET
b) Selector print.a4
c) Extension html
d) sling:resourceType hr/jobs

The best match will be one of the following nodes:

Biggest priority

apps/hr/jobs/print/a4.html.jsp
apps/hr/jobs/print/a4/html.jsp
apps/hr/jobs/print/a4.jsp
apps/hr/jobs/print/print.html.jsp
apps/hr/jobs/print/print.jsp
apps/hr/jobs/print/html.jsp
apps/hr/jobs/print/jobs.jsp
apps/hr/jobs/print/GET.jsp
libs/hr/jobs/print/a4.html.jsp
libs/hr/jobs/print/a4/html.jsp
libs/hr/jobs/print/a4.jsp
libs/hr/jobs/print/print.html.jsp
libs/hr/jobs/print/print.jsp
libs/hr/jobs/print/html.jsp
libs/hr/jobs/print/jobs.jsp
libs/hr/jobs/print/GET.jsp
Lowest priority


Request Example
http://myhost/content/corporate/jobs/developer.html

Notice how the resolutions start at the `content` folder, then uses a file in the `apps` folder by `sling:resourceType` reference:




By aem4beginner

No comments:

Post a Comment

If you have any doubts or questions, please let us know.