Mudanças entre as edições de "Request Resolution in Adobe AEM"

De Basef
Ir para: navegação, pesquisa
Linha 33: Linha 33:
 
[[Arquivo:request-resolution-2.png]]
 
[[Arquivo:request-resolution-2.png]]
  
 +
 +
== 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 the following order:
 +
 +
    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
  
 
== Request Example ==
 
== Request Example ==

Edição das 10h23min de 23 de maio de 2018

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 find the correct folder, it chooses a node with the best match based on some of the URL properties:

   `Selector`
   `Extension`
   `Method`

Request-resolution-2.png


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 the following order:

   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

Request Example

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

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

Request-resolution-1.png