Expand my Community achievements bar.

Dive into Adobe Summit 2024! Explore curated list of AEM sessions & labs, register, connect with experts, ask questions, engage, and share insights. Don't miss the excitement.
SOLVED

Purpose of SlingHttpServletRequest as adaptables in Sling model

Avatar

Level 1

I am not able to understand when to use 'SlingHttpServletRequest' and 'Resource' as adaptables in sling model. Can someone please clarify my doubts ?

1 Accepted Solution

Avatar

Correct answer by
Level 6

When you want to interact with something in OSGi using a servlet or obtain something from the incoming request, you can go for SlingHttpServletRequest. When the interaction is purely with AEM resource you can go for Resource.

As mentioned in the documentation , using SlingHttpServletRequest, you can still get the resource something along the lines of request.getResource():

@Model(adaptables=SlingHttpServletRequest.class) public interface MyModel

// will return request.getResource().getValueMap().get("propertyName", String.class) @Inject @Via("resource") String getPropertyName(); }

View solution in original post

1 Reply

Avatar

Correct answer by
Level 6

When you want to interact with something in OSGi using a servlet or obtain something from the incoming request, you can go for SlingHttpServletRequest. When the interaction is purely with AEM resource you can go for Resource.

As mentioned in the documentation , using SlingHttpServletRequest, you can still get the resource something along the lines of request.getResource():

@Model(adaptables=SlingHttpServletRequest.class) public interface MyModel

// will return request.getResource().getValueMap().get("propertyName", String.class) @Inject @Via("resource") String getPropertyName(); }