我想将托管会话Bean注入JSF中的实体。
我有一个要求,我需要根据用户在前端选择的区域设置显示不同的状态文本。 (国际化)一个状态ID我有4个状态文本,即StatusText,StatusTextLang1,StatusTextLang2,StatusTextLang3。
为了支持此功能,我正在对StatusText属性的getter方法进行更改。在这里,我想从SessionBean中获取Locale。因为它是一个实体,所以我得到一个空的sessionBean。
contains
答案 0 :(得分:-1)
我检查了几个选项,然后解决了问题。
FacesContext facesContext = FacesContext.getCurrentInstance();
sessionBean = (SessionBean) facesContext.getApplication()
.getVariableResolver().resolveVariable(facesContext, "sessionBean");
它可能不是一个伟大的设计,但绝对是一个快速的解决方案。