I have a class which extends AbstractProductImporter[com.adobe.cq.commerce.pim.common.AbstractProductImporter] and implements ProductImporter[com.adobe.cq.commerce.pim.api.ProductImporter]. It has @Component, @Service annotations declared at the top.
Here, custom logic is written which checks if a flag present[for every product] in json, got from PIM system is update/create etc and based on that code is present. Here I am trying to use, replicator.replicate(resourceResolver.adaptTo(Session.class), ReplicationActionType.ACTIVATE, pagePath).
@Reference public Replicator replicator; is made use of in the java file.
But I am getting Nullpointerexception on hitting this replicator.replicate line.
I have spent quite some time on this, but no clue as to what is going on.'pagePath' is pointing to existing page in the repository.
Don't know what is happening.
Any thoughts on this will be really really helpful.
the reference must alwas be non-null when the service gets active. Because this is the default semantic of the @Reference annotation. Can you post the source code of your class? And can you make sure, that the service is properly registered within OSGI? Just have a look at /system/console/components and look for your class.