I am trying to access page properties using services in AEM 6.4
I have created an interface,
public interface AccessPageProp {
public String getPageProp();
}
I have created a class that implements this interface,
@Component(service = AcccessPagePropImpl.class, immediate = true)
public class AcccessPagePropImpl implements AccessPageProp {
Logger logger = LoggerFactory.getLogger(AcccessPagePropImpl.class);
@Reference
private ResourceResolverFactory resolverFactory;
@Override
public String getPageProp() {
logger.info("Entering into getPageProp()...");
String title = "";
Map<String, Object> param = new HashMap<String, Object>();
param.put(ResourceResolverFactory.SUBSERVICE, "readService");
ResourceResolver resourceResolver = null;
try {
resourceResolver = resolverFactory.getServiceResourceResolver(param);
Resource pageResource = resourceResolver.getResource("/content/MyProject/en/TestPageName/jcr:content");
Page myPage = pageResource.adaptTo(Page.class);
title = myPage.getTitle();
return title;
} catch (Exception e) {
logger.info("Exception...."+e.toString());
e.printStackTrace();
}
return title;
}
}
I am getting "java.lang.NullPointerException" in line "resourceResolver = resolverFactory.getServiceResourceResolver(param);"