ResourceResolverFactory resolverFactory is null outside of 'Activate' method when implementing Transformer and Transformerfactory
Hi.
Maybe I need to break down my service into a few services, but here is whats going on.
I am needing to modify certain links generated inside of AEM. To do this, I am working with SAX and the Transformer and TransformerFactory interfaces.
Within my service's activate method, everything works fine. I have access to the referenced ResourceResolverFactory:
@Reference
private ResourceResolverFactory resolverFactory;
@Activate
protected void activate(Map<String, Object> properties) {
log.error("[[[ Inside of Activate ]]]]");
Map<String, Object> param = new HashMap<String, Object>();
param.put(ResourceResolverFactory.SUBSERVICE, SERVICE_NAME);
ResourceResolver resolver = null;
try {
resolver = resolverFactory.getServiceResourceResolver(param);
log.error("UserID => " + resolver.getUserID());
} catch (LoginException e) {
log.error("LoginException",e);
} finally {
resolver.close();
}
}
(Sorry, the syntax highlter doesn't like the copy paste job.
If I run this same code, inside of my custom method, resolverFactory is null.
private void BuildUrl(){
log.error("[[[ Inside of Build URL ]]]]");
Map<String, Object> param = new HashMap<String, Object>();
param.put(ResourceResolverFactory.SUBSERVICE, SERVICE_NAME);
ResourceResolver resolver = null;
try {
resolver = resolverFactory.getResourceResolver(param);
log.error("UserID => " + resolver.getUserID());
} catch (LoginException e) {
log.error("LoginException",e);
}
}
Any ideas why resolverFactory is not Null during the @activate method, and then null during my custom method?