Jsf 选项卡视图中的dataTable使用了错误的数据类型
我试图在选项卡视图中显示数据表 目前,我的xhtml中的代码如下所示:Jsf 选项卡视图中的dataTable使用了错误的数据类型,jsf,primefaces,datatable,tabview,Jsf,Primefaces,Datatable,Tabview,我试图在选项卡视图中显示数据表 目前,我的xhtml中的代码如下所示: <p:tabView id="tabView" value="#{volumeController.shownSeries}" var="serie" cache="false"> <p:tab title="#{serie.name}"> <p:dataTable value="#{volumeController.findVolumesForS
<p:tabView id="tabView" value="#{volumeController.shownSeries}" var="serie" cache="false">
<p:tab title="#{serie.name}">
<p:dataTable value="#{volumeController.findVolumesForSeries(serie.id)}" var="volume">
<p:column>
<h:outputText value="#{volume.volumeNumber}"/>
</p:column>
</p:dataTable>
</p:tab>
</p:tabView>
问题是,这是我在volumeController中的方法:
public List<Volume> findVolumesForSeries(long id) {
List<Volume> v = volumeFacade.getVolumesForSeries(id);
return v;
}
因此,我在控制器中返回一个卷列表,但Glassfish将其解释为一个系列列表。
我试图用.toString显示值,但它只显示我的系列的.toString的结果
我的卷实体有一个字段VolumeNumber,每个选项卡都会调用控制器中的方法
我哪里做错了,或者这是我脸上的一只虫子?我使用的是4.0
问候
麒麟所以,我终于发现了我的错误 在我的JPA查询中,我将整个列表作为一个列表返回。不知何故,它在我的方法(见上文“findVolumesForSeries”)中的所有赋值中都漏掉了,只是在用户界面中抛出了错误 这是我见过的最奇怪的错误,但对于其他发现这个问题的人来说: 检查您的方法是否都返回正确的数据类型——不知何故,Java在这里搞砸了
public List<Volume> findVolumesForSeries(long id) {
List<Volume> v = volumeFacade.getVolumesForSeries(id);
return v;
}