Я пишу компонент службы OSGI в AEM. Я хочу получить текущее доменное имя в методе активации компонента службы.
В настоящее время я пишу метод построения, чтобы получить запрос от ссылающегося класса / службы / модели / сервлета для инициализации «запроса» class и использование этого объекта запроса для получения имени сервера
private SlingHttpServletRequest request;
private String domainName;
@Override
public void construct(final SlingHttpServletRequest request) {
this.request = request;
}
@Override
public void setDomainName(){
this.domainName = request.getServerName();
}
И this.domainName
используется в нескольких реализациях методов службы.
Итак, мне нужно вызвать 2 дополнительных метода службы,
- Construct - для инициализации глобального
request
объекта - setDomainName - для инициализации
domainName
глобального объекта, который будет использоваться во всех других методах обслуживания
Есть ли способ получить имя домена в методе активации, чтобы мне не пришлось вызывать два вышеуказанных метода для использования службы.
Примечание: - Я не могу создать конфигурацию OSGI для имени домена, поскольку это доменное имя уже используется как ключевое свойство для идентификации конфигурации OSGI данной фабрики