2016-11-24 8 views
0

私はAEM ResourceResolverFactoryヌル

MyComponent extends WCMUser{ 
@Reference 
private ResourceResolverFactory resourceResolverFactory; 

のようなHTLコンポーネントクラスを持っているが、私はそれを使用しようとしているとき、私は同じでNullPointerExceptionが取得しています。

@Service & @ Component SCRタグを使用してみましたが、助けがありませんでした。

答えて

0

これで、別のサービスを作成してResourceResolverFactoryを取得できます。一度そこに私はこのサービスでResourceResolverFactoryを使用するか、WCMUseクラスに渡すことができます。

2

Java Use APIで@Referenceまたは他の注釈を使用することはできません。これはOSGiサービスとして扱われないためです。代わりにgetSlingScriptHelper()を使用してSlingScriptHelperオブジェクトを取得し、サービスを取得するために使用できます。それはあなたがWCMUsePojoクラス内で利用可能なgetResourceResolver()メソッドを呼び出すことができる必要がある唯一のResourceResolverある場合は

public MyComponent extends WCMUsePojo { 

    public void activate() { 
     getSlingScriptHelper().getService(<<SomeService.class>>); 
    } 
} 

Java Use-APIの詳細については、in this official docを参照してください。