【问题标题】:How to configure JSF 2.0 application's project stage via JNDI in Tomcat如何在 Tomcat 中通过 JNDI 配置 JSF 2.0 应用程序的项目阶段
【发布时间】:2011-09-25 09:03:23
【问题描述】:

一直在努力寻找配置 Tomcat 7.0.11 的方法,以便我的 Web 应用程序可以使用 Tomcat 配置中的项目阶段设置。到目前为止 - 没有运气。想法是在 Tomcat 服务器/主机/应用程序范围内设置此属性,而不是在 web.xml 中设置它。有任何想法吗?我正在使用 MyFaces JSF 2 实现 2.0.5。

【问题讨论】:

    标签: debugging tomcat jsf-2 production


    【解决方案1】:

    规范说 JSF 实现在 java:comp/env/jsf/ProjectStage 下使用 JNDI 查找 Project Stage。如果未找到,它将使用 web.xml 中的上下文参数 javax.faces.PROJECT_STAGE。这意味着如果使用 JNDI 在您的 Tomcat 上定义/找到,则首选的值优于 web.xml 设置。

    你可以做两件事:

    选项 1: 覆盖上下文参数:这意味着使用 Tomcat server.xml 或 context.xml 设置/覆盖上下文参数。你需要把它放在你的 -tag:

    <Parameter name="javax.faces.PROJECT_STAGE" value="Production" override="false" />
    

    小心:override="false"这里的意思是这个参数不能被web.xml覆盖(不是相反)!

    选项 2: 配置可以使用 JNDI 找到的资源:通过使用它,JSF 实现可以使用 JNDI 查找解决项目阶段。

    <Environment name="jsf/ProjectStage" value="Production" type="java.lang.String" override="false"/>
    

    您也可以将其移至 server.xml 中的 标记。在这种情况下,您需要使用 -tag 在您的 -tag 中引用它。

    【讨论】:

      猜你喜欢
      • 2012-07-22
      • 1970-01-01
      • 2011-09-22
      • 1970-01-01
      • 2011-03-30
      • 1970-01-01
      • 1970-01-01
      • 2013-07-03
      • 2011-01-29
      相关资源
      最近更新 更多