由于datalist,JSP没有返回任何内容

时间:2018-01-01 13:25:21

标签: jsp primefaces

我试图使用primafaces显示JSP中的对象列表,但没有显示任何内容。我很确定列表不是null。 readAllPilot代码:

<html xmlns="http://www.w3.org/1999/xhtml"
  xmlns:ui="http://java.sun.com/jsf/facelets"
  xmlns:h="http://java.sun.com/jsf/html"
  xmlns:f="http://java.sun.com/jsf/core"
  xmlns:p="http://primefaces.org/ui">
<h:head>
    <title>read all pilot </title>
</h:head>
<h:body>
    <h:form id="form">
        <p:dataList id="datalist" var="pilot" value="#{pilotController.list}" itemType="disc">  
            <f:facet name="header">  
                <h:outputText value="Basic Message List"/>  
            </f:facet>  
            <h:outputText value="#{pilot.idPilot},#{pilot.name}" ></h:outputText>  
        </p:dataList>

    </h:form> 
</h:body>

这只是代码的一部分,以便更清晰 PilotController类:

      public class PilotController {
     Pilot pilot;
     private List<Pilot> list;
     public List<Pilot> getList() {
            return list;
        }
     public void setList(List<Pilot> list) {
            this.list = list;
        }
       @PostConstruct
        protected void init() {
            pilot = new Pilot();
            list = re.catchThemAllPilot();

        }
    }

你能不能给我任何想法?

1 个答案:

答案 0 :(得分:0)

如果要使用视图范围,可以定义自己的视图范围,也可以使用预定义的范围。

在faces-config.xml中,您可以在下面编写代码。

<el-resolver>org.springframework.web.jsf.el.SpringBeanFacesELResolver</el-resolver>



@ManagedBean(name = "pilotController ")
@Scope("view")
public class PilotController {
     Pilot pilot;
     private List<Pilot> list;
     public List<Pilot> getList() {
            return list;
        }
     public void setList(List<Pilot> list) {
            this.list = list;
        }
       @PostConstruct
        protected void init() {
            pilot = new Pilot();
            list = re.catchThemAllPilot();

        }
    }