h:dataTable中的h:column标签会产生#{foo.boo}吗?

时间:2019-03-28 15:38:57

标签: jsf

JSF的新手,我尝试显示数据列表。在一个JSP文件中,我有以下内容

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<%@ page contentType="text/html;charset=windows-1252"%>
<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

<html xmlns = "http://www.w3.org/1999/xhtml" xmlns:h = "http://java.sun.com/jsf/html">

  <head>      
    <title>A title</title>
    <link href="../css/menu.css" rel="stylesheet" type="text/css"/>
    <link href="../css/tabs.css" rel="stylesheet" type="text/css"/>
    <script language="JavaScript1.2" src="../javascript/coolmenus4.js" type="text/javascript"></script>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>        
  </head>

<body>

    <f:view>
        <h:dataTable value="#{someBean.someItemClassList}" var="foo">

        <h:column>
          <f:facet name="header">Some Thing</f:facet>
          #{foo.boo}
        </h:column>

        </h:dataTable>
    </f:view>
  </body>
</html>

我在上面看不到任何语法错误。

托管bean类似于

public class SomeClass {

  private List<SomeItemClass> someItemClassList;
  ....

  public List<SomeItemClass> getSomeItemClassList(){ ...}
}

在页面上,该部分显示为

Some Thing #{foo.boo} 

但不是数据本身。

缺少什么?

更新

我以为我错过了JSP文件中的声明xmlns:f =“ http://xmlns.jcp.org/jsf/core。添加它不会改变任何输出。

更新2

问题是由使用类名而不是faces-config.xml文件中定义的类名引起的。

0 个答案:

没有答案