首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何从视图/内部代码访问javax.faces.PROJECT_STAGE?

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

Stack Overflow用户
提问于 2010-08-03 23:00:33
回答 3查看 10.4K关注 0票数 11

我的设置:JavaEE6应用程序,在Glassfish 3.0.1上运行EJB3.1、CDI/Weld、JSF2

我刚刚在this page上读到了Faces ProjectStage,这是一件很酷的事情。因此,我在我的Web.xml中对其进行了配置,将其设置为开发:

代码语言:javascript
复制
<context-param>
  <param-name>javax.faces.PROJECT_STAGE</param-name>   
  <param-value>Development</param-value>
</context-param>

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

因此,我已经尝试了值为#{javax.application.projectStage}的outputtext,它似乎是null,我还尝试了许多其他变体,但都没有成功。我甚至无法从Java代码中访问ProjectStage (这样我就可以自己用Bean公开它)。

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

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-08-03 23:22:42

明白了。从视图中可以访问它,如下所示:

代码语言:javascript
复制
<h:outputText value="Stage:#{facesContext.application.projectStage}"/>

在代码中,可以像这样访问它:

代码语言:javascript
复制
FacesContext.getCurrentInstance().getApplication().getProjectStage().toString()
票数 28
EN

Stack Overflow用户

发布于 2010-08-03 23:15:23

这可能是通过initParam implicit object公开的。如果失败,请检查ExternalContext

票数 2
EN

Stack Overflow用户

发布于 2011-06-21 01:53:47

您可以使用initParam预定义的JSF变量来获取它

代码语言:javascript
复制
#{initParam['javax.faces.PROJECT_STAGE']}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3397813

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档