我有一个OSGi服务,只需要在发布实例中运行。当我只有一个resourceResolver而不是请求时,如何在java中获取runmode?
要获取当前AEM实例正在使用的运行模式列表,您可以在服务和/或servlet中使用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");
}
}
看到:
M 6.1:Coxspoi
M 6.2:Coxspoi
M 6.3:Coxspoi
M 6.4:Coxspoi