使用JSF在xhtml视图中获取FacesContext

时间:2017-05-19 07:31:25

标签: jsf jsf-2.2

我正在尝试将应用程序从RichFaces迁移到PrimeFaces 5.0并将JSF 1.2升级到JSF 2.2。之前我们有.jsp个页面,其中包含下面的代码。

<%
    FacesContext fc = FacesContext.getCurrentInstance();
    Login login = (Login) fc.getELContext().getELResolver().getValue(fc.getELContext(), null, "login");
    if (null == login.getEmailAddress()) {
        response.sendRedirect("./");
    }

%>

现在我们将每个.jsp页面更改为.xhtml,正如预期的那样,上面的代码段不适合xhtml视图。我试图在视图中搜索替换上述功能,但遗憾的是找不到任何相同的内容。我还尝试将上面一行代码放在<!CDATA内,[不确定它是否正确],如下所示:

<![CDATA[
<%
     FacesContext fc = FacesContext.getCurrentInstance();
     Login login = (Login)fc.getELContext().getELResolver().getValue(fc.getELContext(), null, "login");
     if (null == login.getEmailAddress()) {
         response.sendRedirect("./");
     }
%>       
]]>

正如预期的那样,它甚至不能很好地运作。

我怎样才能在xhtml内实现这一目标?这是可能的还是我应该采取其他方式来做到这一点?

注意 - 该应用程序是单页面应用程序

0 个答案:

没有答案