Resource Type Inheritance fully supported for the Sling Servlet Resolver?

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Resource Type Inheritance fully supported for the Sling Servlet Resolver?

Konrad Windszus
Hi,
Currently if a servlet is registered for a specific resource type, e.g. like the one from https://github.com/Adobe-Marketing-Cloud/aem-core-wcm-components/blob/be656c09ea43ea80b37e0727399aa48de3e43c8a/bundles/core/src/main/java/com/adobe/cq/wcm/core/components/internal/servlets/AdaptiveImageServlet.java it is correctly resolved for a resource with a resource type "componenta"  directly having "core/wcm/components/image" as resource super type. But as soon as an additional inheritance level comes into play, e.g. "componenta" deriving from "core/wcm/components/image" and "componentb" deriving from "componenta" the servlet is no longer being resolved for resources having the resource type "componentb" (and instead a 404 is returned, because no other servlet/script for the according selector is registered). Is that a known limitation of the Servlet Resolver?
Thanks,
Konrad
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Resource Type Inheritance fully supported for the Sling Servlet Resolver?

Carsten Ziegeler
Konrad Windszus wrote
> Hi,
> Currently if a servlet is registered for a specific resource type, e.g. like the one from https://github.com/Adobe-Marketing-Cloud/aem-core-wcm-components/blob/be656c09ea43ea80b37e0727399aa48de3e43c8a/bundles/core/src/main/java/com/adobe/cq/wcm/core/components/internal/servlets/AdaptiveImageServlet.java it is correctly resolved for a resource with a resource type "componenta"  directly having "core/wcm/components/image" as resource super type. But as soon as an additional inheritance level comes into play, e.g. "componenta" deriving from "core/wcm/components/image" and "componentb" deriving from "componenta" the servlet is no longer being resolved for resources having the resource type "componentb" (and instead a 404 is returned, because no other servlet/script for the according selector is registered). Is that a known limitation of the Servlet Resolver?

I'm not quiet sure what you mean with "deriving"?

Regards
Carsten

> Thanks,
> Konrad
>


 

--
Carsten Ziegeler
Adobe Research Switzerland
[hidden email]
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Resource Type Inheritance fully supported for the Sling Servlet Resolver?

Konrad Windszus
"Deriving" in this context means: having a sling:resourceSuperType set.
So in my example "componenta" has sling:resourceSuperType set to "core/wcm/components/image/v1/image" and "componentb" has sling:resourceSuperType set to "componenta".

> On 13. Jun 2017, at 16:24, Carsten Ziegeler <[hidden email]> wrote:
>
> Konrad Windszus wrote
>> Hi,
>> Currently if a servlet is registered for a specific resource type, e.g. like the one from https://github.com/Adobe-Marketing-Cloud/aem-core-wcm-components/blob/be656c09ea43ea80b37e0727399aa48de3e43c8a/bundles/core/src/main/java/com/adobe/cq/wcm/core/components/internal/servlets/AdaptiveImageServlet.java it is correctly resolved for a resource with a resource type "componenta"  directly having "core/wcm/components/image" as resource super type. But as soon as an additional inheritance level comes into play, e.g. "componenta" deriving from "core/wcm/components/image" and "componentb" deriving from "componenta" the servlet is no longer being resolved for resources having the resource type "componentb" (and instead a 404 is returned, because no other servlet/script for the according selector is registered). Is that a known limitation of the Servlet Resolver?
>
> I'm not quiet sure what you mean with "deriving"?
>
> Regards
> Carsten
>
>> Thanks,
>> Konrad
>>
>
>
>
>
> --
> Carsten Ziegeler
> Adobe Research Switzerland
> [hidden email]

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Resource Type Inheritance fully supported for the Sling Servlet Resolver?

Carsten Ziegeler
Konrad Windszus wrote
> "Deriving" in this context means: having a sling:resourceSuperType set.
> So in my example "componenta" has sling:resourceSuperType set to "core/wcm/components/image/v1/image" and "componentb" has sling:resourceSuperType set to "componenta".
>
Got it, thanks - I think that should work...has componenta a different
resource type than componenta? (not sure if this makes a difference though)

Regards
Carsten

>> On 13. Jun 2017, at 16:24, Carsten Ziegeler <[hidden email]> wrote:
>>
>> Konrad Windszus wrote
>>> Hi,
>>> Currently if a servlet is registered for a specific resource type, e.g. like the one from https://github.com/Adobe-Marketing-Cloud/aem-core-wcm-components/blob/be656c09ea43ea80b37e0727399aa48de3e43c8a/bundles/core/src/main/java/com/adobe/cq/wcm/core/components/internal/servlets/AdaptiveImageServlet.java it is correctly resolved for a resource with a resource type "componenta"  directly having "core/wcm/components/image" as resource super type. But as soon as an additional inheritance level comes into play, e.g. "componenta" deriving from "core/wcm/components/image" and "componentb" deriving from "componenta" the servlet is no longer being resolved for resources having the resource type "componentb" (and instead a 404 is returned, because no other servlet/script for the according selector is registered). Is that a known limitation of the Servlet Resolver?
>>
>> I'm not quiet sure what you mean with "deriving"?
>>
>> Regards
>> Carsten
>>
>>> Thanks,
>>> Konrad
>>>
>>
>>
>>
>>
>> --
>> Carsten Ziegeler
>> Adobe Research Switzerland
>> [hidden email]
>
>


 

--
Carsten Ziegeler
Adobe Research Switzerland
[hidden email]
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Resource Type Inheritance fully supported for the Sling Servlet Resolver?

Konrad Windszus
Ok, forget about this issue here. Actually the Sling Servlet Resolver can deal fine even with transitive resource super types. In my case the issue was within the https://github.com/Adobe-Marketing-Cloud/aem-core-wcm-components/blob/be656c09ea43ea80b37e0727399aa48de3e43c8a/bundles/core/src/main/java/com/adobe/cq/wcm/core/components/internal/servlets/AdaptiveImageServlet.java which was throwing a 404.

> On 13. Jun 2017, at 16:51, Carsten Ziegeler <[hidden email]> wrote:
>
> Konrad Windszus wrote
>> "Deriving" in this context means: having a sling:resourceSuperType set.
>> So in my example "componenta" has sling:resourceSuperType set to "core/wcm/components/image/v1/image" and "componentb" has sling:resourceSuperType set to "componenta".
>>
> Got it, thanks - I think that should work...has componenta a different
> resource type than componenta? (not sure if this makes a difference though)
>
> Regards
> Carsten
>
>>> On 13. Jun 2017, at 16:24, Carsten Ziegeler <[hidden email]> wrote:
>>>
>>> Konrad Windszus wrote
>>>> Hi,
>>>> Currently if a servlet is registered for a specific resource type, e.g. like the one from https://github.com/Adobe-Marketing-Cloud/aem-core-wcm-components/blob/be656c09ea43ea80b37e0727399aa48de3e43c8a/bundles/core/src/main/java/com/adobe/cq/wcm/core/components/internal/servlets/AdaptiveImageServlet.java it is correctly resolved for a resource with a resource type "componenta"  directly having "core/wcm/components/image" as resource super type. But as soon as an additional inheritance level comes into play, e.g. "componenta" deriving from "core/wcm/components/image" and "componentb" deriving from "componenta" the servlet is no longer being resolved for resources having the resource type "componentb" (and instead a 404 is returned, because no other servlet/script for the according selector is registered). Is that a known limitation of the Servlet Resolver?
>>>
>>> I'm not quiet sure what you mean with "deriving"?
>>>
>>> Regards
>>> Carsten
>>>
>>>> Thanks,
>>>> Konrad
>>>>
>>>
>>>
>>>
>>>
>>> --
>>> Carsten Ziegeler
>>> Adobe Research Switzerland
>>> [hidden email]
>>
>>
>
>
>
>
> --
> Carsten Ziegeler
> Adobe Research Switzerland
> [hidden email]

Loading...