html - Primefaces p:datatable sortBy无法正常工作
问题描述
我的网站上显示了预先制作的视图。数据查询是通过 Hibernate 从 DB2 数据库完成的,并使用 JSF 显示。整个事情在本地 JBoss 服务器上运行。
这是 HTML 背后的逻辑 bean:
@Named(value = "vb")
@ViewScoped
public class ViewBean implements Serializable {
@Inject
private ViewHandler vh;
@PostConstruct
public void init() {
}
public List<PortView> getPVList() {
return vh.getPortViewList();
}
ViewHandler vh
检索来自相应实体的视图列表。(见下文)
@Stateless
public class ViewHandler {
public List<PortView> getPortViewList() {
List<PortView> pvlist = em.createQuery("SELECT v FROM PortView v", PortView.class).getResultList();
return pvlist;
}
在这里,您可以在我的 html 中看到 p:datatable:
<html>
<h:body>
<h:form>
<p:dataTable var="portview" value="#{vb.PVList}"
resizableColumns="true" stickyHeader="true"
stickyTopAt=".layout-topbar"
style="margin-left:10%; margin-right:10%; font-family: verdana">
<p:column style="width: 0px" sortable="false" />
<p:column headerText="Instance" sortBy="#{portview.instance}"
style="font-family: verdana; text-align:left">
<h:outputText value="#{portview.instance}" />
</p:column>
[more columns]
</p:dataTable>
</h:form>
</h:body>
</html>
问题:不能对每一列进行排序,内容总是随机的。我应该怎么做才能解决这个问题?
解决方案
幸运的是@Melloware 能够回答我的问题:您只需添加sortBy="#{var.property}"
到p:dataTable
属性。
有关文档,请参见此处。
推荐阅读
- imagemagick - 转换为 PDF 时 ImageMagick 不处理所有 PNG 文件
- javascript - 在 Express 中处理 CORS 无效来源的更好方法?
- android - 如何在不阻塞 UI 的情况下向 GridLayout 添加许多视图?
- django - 如何清除 Django 自动完成字段中的选择
- reactjs - 如何在setState中停止减到负
- google-sheets - 更改具有给定值的单元格范围
- http-headers - 大使映射重写需要标头中的原始 URL
- directory - 命令提示符/列出指定子文件夹中的文件
- angular - 角度日期范围输入火灾变化
- swift - 为什么在使用闭包创建属性时不允许使用 self?