Skip to main content
mohanb
Level 4
Oct 12, 2016 10:20 PM UTC
Solved

retrieve resourceresolver as logged in user

Hi

how do we retrieve resourceresolver on behalf of logged in user? in this case, am getting anonymous as value when getUserID() method is called. Also, what's the difference when we retrieve resource resolver via getResourceResolver(userInfo) and getThreadResourceResolver(). From the logs seems like they both reference to same resolver object instance and no difference in log values.

Map<String,Object> userInfo = new HashMap<String, Object>();

userInfo.put(ResourceResolverFactory.SUBSERVICE, "myuser");

ResourceResolver resourceResolver = resourceFactory.getResourceResolver(userInfo);

ResourceResolver resourceResolverCurrentThread = resourceFactory.getThreadResourceResolver();

            

logger.info("resource resolver {}",resourceResolver.toString());

logger.info("resource resolver {}",resourceResolver.getUserID());

logger.info("resource resolver {}",resourceResolver.isLive());

logger.info("thread resource resolver {}",resourceResolverCurrentThread.toString());

logger.info("thread resource resolver {}",resourceResolver.getUserID());

logger.info("thread resource resolver {}",resourceResolver.isLive());

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.
Feike_Visser1
Feike_Visser1Accepted solution
Adobe Employee
Oct 13, 2016 8:02 AM UTC

4 replies

smacdonald2008
Level 10
Oct 12, 2016 11:08 PM UTC
Feike_Visser1
Adobe Employee
Adobe Employee
Oct 13, 2016 6:37 AM UTC

If you pass through things like resourceResolver /  resource from user's request you get the right object/permissions based on the user.

When getting the resource-resolver via the factory it is disconnected from the user

Translate
mohanb
mohanbAuthor
Level 4
Oct 13, 2016 7:56 AM UTC

Hi

how do we retrieve from resourceresolver of user request?

Translate
Feike_Visser1
Adobe Employee
Feike_Visser1Adobe EmployeeAccepted solution
Adobe Employee
Oct 13, 2016 8:02 AM UTC