Skip to main content
October 16, 2015
Beantwortet

local repository access with sling resource resolver

  • October 16, 2015
  • 3 Antworten
  • 2421 Ansichten

I like to create test classes which can be started on local system connecting to an AEM repository. To be able to use same code as running inside repository, I need to have a proper ResourceResolver initialized. Of course, inside a running AEM instance, I just get it from the SlingHttpServletRequest. How can I get a ResourceResolver from local test class?

 

Sample code:

ResourceResolver resResolver = ????

PageManager pageMgr = resResolver.adaptTo(PageManager.class);

....

Dieses Thema wurde für Antworten geschlossen.
Beste Antwort von Mshaji

Here are different ways you can get resourceResolver

http://sling.apache.org/documentation/tutorials-how-tos/getting-resources-and-properties-in-sling.html

3 Antworten

October 16, 2015

thanks for the reply.

I want to run the code outside of the Repository instance (outside of AEM). I don't want to run any tests remotely, i.e. like in a JSP that still resides on the AEM itself.

My goal is just to open a connection to the repository like I can do with JcrUtils.getRepository(). This way I still can connect and operate to any JCR nodes directly. But I like to use the Sling Features (i.e. adaptTo).

rishim22446870
Adobe Employee
Adobe Employee
October 16, 2015

There can be two approach to solve your problem

a) Considering the test class resides inside OSGI, you can inject a reference to this service [1]

b) If you still need a slingRequest Object(from current user session), you can make a rest end point(write all ur test class code in jsp) and hit this rest end point. For this you can refer [2] [3]

[1] http://docs.adobe.com/docs/en/cq/5-5/javadoc/org/apache/sling/api/resource/ResourceResolverFactory.html

[2] http://sling.apache.org/documentation/development/sling-testing-tools.html

[3] https://svn.apache.org/repos/asf/sling/trunk/testing/tools/src/main/java/org/apache/sling/testing/tools/sling/SlingClient.java.

Let me know if you still face any problem.

MshajiCommunity AdvisorAntwort
Community Advisor
October 16, 2015