Обновленный ответ:
Получите доступ к компоненту области приложения из фильтра следующим образом.
ServletContext context = req.getServletContext();
MyAppBean myAppBean = (MyAppBean) context.getAttribute("myAppBean");
Получите доступ к компоненту с областью действия сеанса из фильтра следующим образом.
HttpSession session = ((HttpServletRequest) req).getSession(false);
MyAppBean myAppBean = (MyAppBean ) session.getAttribute("myAppBean");
Исходный ответ:
Да, можете, сделайте (eager = true)
и добавьте необходимые аннотации.
@ManagedBean(eager = true)
@ApplicationScoped
public class MyAppBean { }
и в вашем доступе к компоненту с областью действия сеанса это выглядит так
@ManagedProperty(value = "#{myAppBean }")
private MyAppBean myAppBean; //add getter and setter
Если ваш bean-компонент не является @ManagedBean
, вы можете получить к нему доступ из ApplicationMap
следующим образом
MyAppBean myAppBean = (MyAppBean ) FacesContext.getCurrentInstance().
getExternalContext().getApplicationMap().get("country");
Если bean-компонент, к которому вы хотите получить доступ, является @SessionScoped
, вы можете получить его из SessionMap
, как это
MyAppBean myAppBean = (MyAppBean ) FacesContext.getCurrentInstance().
getExternalContext().getSessionMap().get("country");
Здесь у вас есть хороший учебник о том, как получить доступ к bean-компонентам из неуправляемых bean-компонентов.
Доступ к управляемому компоненту из прослушивателя событий — JSF< /а>
person
Daniel
schedule
28.11.2012
javax.servlet.Filter
? (если это так, вы должны были использовать тег[servlet-filters]
, а не[filter]
!) Принятый в настоящее время ответ в этом случае не имеет смысла. - person BalusC   schedule 28.11.2012FacesContext
обычно вообще недоступен в фильтре сервлета, поэтому почему он работает для вас, мне не понятно. Управляемое свойство работает только в управляемом компоненте, однако фильтр сервлета не является управляемым компонентом. Затем на ваш вопрос в основном отвечает тот же ответ, что и на этот вопрос: stackoverflow.com/questions/2633112/ - person BalusC   schedule 28.11.2012