我是JSF和PrimeFaces的新手
这就是我的领域.xhtml
<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:p="http://primefaces.org/ui">
<h:body>
<h:form>
<p:dataTable var="field" value="#{fieldController.getFields()}">
<p:column headerText="Id">
<h:outputText value="#{field.field_id}" />
</p:column>
<p:column headerText="Label">
<h:outputText value="#{field.lable}" />
</p:column>
<p:column headerText="Type">
<h:outputText value="#{field.type}" />
</p:column>
<p:column headerText="Required">
<h:outputText value="#{field.required}" />
</p:column>
<p:column headerText="Is Active">
<h:outputText value="#{field.isActive}" />
</p:column>
</p:dataTable>
</h:form>
</h:body>
</html>
这是现场控制器
@ManagedBean(name = "fieldController", eager = true)
public class FieldController {
@ManagedProperty("#{fileDAO}")
private FieldDAO fieldDAO;
public FieldDAO getFieldDAO() {
return fieldDAO;
}
public void setFieldDAO(FieldDAO fieldDAO) {
this.fieldDAO = fieldDAO;
}
public List<Field> getFields() throws Exception{
return fieldDAO.getFields();
}
}
最后我只看到空白的白页。请帮我找到我的问题在哪里。
使用以下代码进行测试。Primefaces自动调用getter方法。您只需设置字段名称。与您的示例一样,它们仅在 getter 方法中使用方法名称而不使用 get (#{fieldController.fields}(
<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:p="http://primefaces.org/ui">
<h:body>
<h:form>
<p:dataTable var="field" value="#{fieldController.fields}">
<p:column headerText="Id">
<h:outputText value="#{field.field_id}" />
</p:column>
<p:column headerText="Label">
<h:outputText value="#{field.lable}" />
</p:column>
<p:column headerText="Type">
<h:outputText value="#{field.type}" />
</p:column>
<p:column headerText="Required">
<h:outputText value="#{field.required}" />
</p:column>
<p:column headerText="Is Active">
<h:outputText value="#{field.isActive}" />
</p:column>
</p:dataTable>
</h:form>
</h:body>
</html>