Доступ к FacesContext от веб-сервиса

Я разрабатываю веб-сервис, который назовут клиенты, которые записаны мной. В веб-сервисе я должен использовать объекты всего приложения, который упрощает загрузку приложения в системе. Я реализовал свои объекты всего приложения как показано в этом вопросе.

Я могу использовать свой объект на jsf странице без проблемы следующим образом.

MyObject mo = (MyObject) FacesContext.getCurrentInstance().getExternalContext().getApplicationMap().get("MyObjectsName");

Но когда дело доходит до использования это в Запросе к веб-сервису FacesContext.getCurrentInstance () возвращает пустой указатель. Есть ли любой способ использовать FacesContext в веб-сервисе.

5
задан Community 23 May 2017 в 12:07
поделиться

1 ответ

Это значение равно null, потому что веб-службы не проходят через сервлет Faces. Так и должно быть, потому что веб-сервисы не имеют ничего общего с JSF.

В случае, если вы используете реализацию jax-ws, вы можете использовать:

@Resource
WebServiceContext context;

Это внедрит WebServiceContext , с помощью которого вы можете:

ServletContext servletContext = (ServletContext) 
     context.getMessageContext().get(MessageContext.SERVLET_CONTEXT);

И имея ServletContext ], вы можете получить доступ к объектам области приложения.

6
ответ дан 14 December 2019 в 13:30
поделиться
Другие вопросы по тегам:

Похожие вопросы: