如何从视图/内部代码访问javax.faces.PROJECT_STAGE?

Ing*_*her 10 java jsf jsf-2

[我的设置:Java EE 6应用程序,带有EJB3.1,CDI/Weld,在Glassfish 3.0.1上运行的JSF2]

我刚刚在这个页面上阅读了Faces ProjectStage ,这很酷.所以我在我的Web.xml中配置它,将其设置为Development:

<context-param>
  <param-name>javax.faces.PROJECT_STAGE</param-name>   
  <param-value>Development</param-value>
</context-param>
Run Code Online (Sandbox Code Playgroud)

现在我想从JSF视图访问ProjectStage(相应地设置特定UI组件的可见性).

因此,我已经尝试过像输出文本这样的值#{javax.application.projectStage},它似乎是null,我也尝试了许多其他变种,但没有成功.我甚至无法从Java代码中访问ProjectStage(然后我可以用Bean自己公开它).

如何访问应用程序中的PROJECT_STAGE值?

Ing*_*her 26

得到它了.从视图来看,它可以像:

<h:outputText value="Stage:#{facesContext.application.projectStage}"/>
Run Code Online (Sandbox Code Playgroud)

在代码中,可以访问它:

FacesContext.getCurrentInstance().getApplication().getProjectStage().toString()
Run Code Online (Sandbox Code Playgroud)