Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
BedrockMission!

Learn more

View all

Sign in to view all badges

SOLVED

Java JCR/Adobe AEM: How do I access the node directly without using queries?

jayv25585659
Level 6
Level 6

as above. I've looked at "getNode" (part of javax.jcr.node) and it requires a relative path. I'm hoping there's a function that I haven't seen yet that accepts an absulate path.

 

Code example:

 

Node node = Node.getNodeByAbsulotePath("/content/my-folder-here/my-node-here");

 

Thanks a lot.

1 Accepted Solution
vmadala
Correct answer by
Level 3
Level 3

Hello @jayv25585659 ,

 

You can use 

@Inject
@Source("sling-object")
private ResourceResolver resourceResolver;
resourceResolver.getResource(<path>);

 

If this code is in Model class (Basically in Author) you don't need any service user, But if you want to get ResourceResolver in any other services like servlets you need service user with permission to access that node.

And if you want create if node doesn't exists, can use below method

 

ResourceUtil.getOrCreateResource(resolver, path, ....);

 

 

View solution in original post

4 Replies
vmadala
Correct answer by
Level 3
Level 3

Hello @jayv25585659 ,

 

You can use 

@Inject
@Source("sling-object")
private ResourceResolver resourceResolver;
resourceResolver.getResource(<path>);

 

If this code is in Model class (Basically in Author) you don't need any service user, But if you want to get ResourceResolver in any other services like servlets you need service user with permission to access that node.

And if you want create if node doesn't exists, can use below method

 

ResourceUtil.getOrCreateResource(resolver, path, ....);

 

 

View solution in original post

jayv25585659
Level 6
Level 6

Forgot about that! It's been awhile since I've used it. Let me try that tomorrow. Thank you.

 

Edit: I'm extending wcmpojo (or whatever it is called) in my class.

jayv25585659
Level 6
Level 6

This is the one I was looking for. I know I've used it before (workflow code) but I cannot remember where to look. Thank you.