【问题标题】:Set project stage for JavaServer Faces with JNDI configuration/lookup in Glassfish v3在 Glassfish v3 中使用 JNDI 配置/查找为 JavaServer Faces 设置项目阶段
【发布时间】:2011-12-13 15:40:18
【问题描述】:

我正在尝试在具有 JNDI 属性的 GlassFish 应用服务器 v3 中设置 JavaServer Faces 的项目阶段。

我将阶段属性设置为 Development 阶段,但我的应用程序始终收到 Production 阶段。

我在 Windows 系统上使用 GlassFish Server Open Source Edition 3.1(内部版本 43)。

为了在 JSF 页面中呈现项目阶段,我使用这个:

<h:outputText value="Stage:#{facesContext.application.projectStage}"/>

在应用程序中使用项目阶段还需要其他什么吗?该应用程序没有 web.xml 文件。

【问题讨论】:

    标签: jsf glassfish jndi


    【解决方案1】:

    一切都正确,但不要使用stage=Development,而是使用value = Development, 即在属性名称字段中将stage 替换为value。

    【讨论】:

      【解决方案2】:

      您需要在 web.xml 中使用它。它适用于“舞台”。

      <resource-ref>
              <res-ref-name>jsf/ProjectStage</res-ref-name>
              <res-type>java.lang.String</res-type>
              <mapped-name>javax.faces.PROJECT_STAGE</mapped-name>
      </resource-ref>
      

      这会将 GF 的全局 JNDI 属性映射到 JSF 中的引用查找。

      【讨论】:

        【解决方案3】:

        至少,以下条目需要在web.xml 中:

        <resource-ref>
            <res-ref-name>jsf/ProjectStage</res-ref-name>
            <res-type>java.lang.String</res-type>
            <mapped-name>javax.faces.PROJECT_STAGE</mapped-name>
        </resource-ref>
        

        属性名取决于你使用的工厂类:

        • 将value=Development 用于org.glassfish.resources.custom.factory.PrimitivesAndStringFactory
        • 将stage=Development 用于com.sun.faces.application.ProjectStageJndiFactory

        您也可以使用asadmin设置资源:

        C:\glassfish5\bin> asadmin.bat create-custom-resource --restype java.lang.String --factoryclass org.glassfish.resources.custom.factory.PrimitivesAndStringFactory --property "value=Development" javax.faces.PROJECT_STAGE
        
        C:\glassfish5\bin> asadmin.bat create-custom-resource --restype java.lang.String --factoryclass com.sun.faces.application.ProjectStageJndiFactory --property "stage=Development" javax.faces.PROJECT_STAGE
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2011-07-13
          • 1970-01-01
          • 2011-09-25
          • 1970-01-01
          • 2014-04-28
          • 1970-01-01
          • 2011-08-08
          • 2011-08-31
          相关资源
          最近更新 更多