2016-09-23 9 views
2

OSGiサービスは公開インスタンスでのみ実行する必要があります。 resourceResolverを持っていてリクエストしていないときにJavaでrunmodeを取得するにはどうすればよいですか?resourceResolverを使用してJavaでrunmodeを取得するには

+4

の可能性のある重複した[アドビCQで実行モードを決定する](http://stackoverflow.com/questions/12245751/determine-runmode-in-adobe-cq) – Abhishek

答えて

4

現在のAEMインスタンスが使用している実行モードのリストを取得するには、サービスおよび/またはサーブレットでSlingSettingServiceを使用できます。

import org.apache.felix.scr.annotations.Component; 
import org.apache.sling.settings.SlingSettingsService; 

@Component 
public class MyService { 

    @Reference 
    private SlingSettingsService slingSettingsService; 

    private boolean isPublish() { 
     return this.slingSettingsService.getRunModes().contains("publish"); 
    } 
} 

参照:

AEM 6.1:https://docs.adobe.com/docs/en/aem/6-1/ref/javadoc/org/apache/sling/settings/SlingSettingsService.html

AEM 6.2:https://docs.adobe.com/docs/en/aem/6-2/develop/ref/javadoc/org/apache/sling/settings/SlingSettingsService.html

関連する問題