【问题标题】:JSF2.0 Composite Component not getting rendered in MYFacesJSF2.0 复合组件未在 MYFaces 中呈现
【发布时间】:2013-08-29 05:26:48
【问题描述】:

我开发了一个示例项目来测试 JSF2.0 中的复合组件。

这是我的示例代码

我的测试文件

<html xmlns="http://www.w3.org/1999/xhtml"   
  xmlns:h="http://java.sun.com/jsf/html"
  xmlns:f="http://java.sun.com/jsf/core"
  xmlns:composite="http://java.sun.com/jsf/composite"
  xmlns:tp="http://java.sun.com/jsf/composite/test"
  >
<h:body>
    <h:form>
    <h:outputLabel value="Success"/>
       <tp:loginComponent 
          usernameLabel="Enter User Name: " 
          usernameValue="#{login.name}" />
    </h:form>
</h:body>  

<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:composite="http://java.sun.com/jsf/composite"
>
    <composite:interface>
        <composite:attribute name="usernameLabel" />
        <composite:attribute name="usernameValue" />
    </composite:interface>
    <composite:implementation>
        <h:form>
            #{cc.attrs.usernameLabel} : 
            <h:inputText id="username" value="#{cc.attrs.usernameValue}" />
        </h:form>
    </composite:implementation>

当我在 Websphere 8.5 上部署它时,复合组件未呈现。请帮助我确定问题

谢谢

【问题讨论】:

  • 您在此处发布的两个文件都缺少关闭

标签: jsf-2 composite-component websphere-8


【解决方案1】:

您必须调整文件的位置和名称。否则 JSF 将找不到它。

线

xmlns:tp="http://java.sun.com/jsf/composite/test"

将 JSF 指向文件夹 resources/test(相对于您网页的根目录)。假设 WebContent 是您网页的根目录,则资源文件夹应该在其中。

当 JSF 看到 &lt;tp:loginComponent .... /&gt; 时,它将在文件夹中查找名为 loginComponent.xhtml 的文件。

编辑

因为您的资源文件夹中可能有多种资源,所以最好为组件创建一个子文件夹。我通常称它为comps。所以这会给你路径 /WebContent/resources/comps 在此文件夹中放置一个名为 loginComponent.xhtml 的文件,其中包含您的组件。

将命名空间行更改为:xmlns:tp="http://java.sun.com/jsf/composite/comps"(暗示 comps 在资源中,但未在 URL 中指定)。

另请参阅java ee tutorial

【讨论】:

  • 我现在已将该行更改为 xmlns:tp="java.sun.com/jsf/composite/resources 并将文件重命名为 loginComponent.xhtml ,但它仍然无法输入任何内容。resources 是我的网络根目录中的一个文件夹
猜你喜欢
  • 2023-04-01
  • 2016-04-20
  • 1970-01-01
  • 1970-01-01
  • 2023-03-23
  • 2013-09-29
  • 2017-11-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多