Expand my Community achievements bar.

Submissions are now open for the 2026 Adobe Experience Maker Awards.

Mark Solution

This conversation has been locked due to inactivity. Please create a new post.

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
Community Advisor

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
Community Advisor

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(); }