当前位置: 首页 > 知识库问答 >
问题:

PrimeFaces:页面排序上的多个数据表

商和颂
2023-03-14

我用的是Primefaces 5.2。

<p:dataTable .. id="tab1">
   <p:column sortBy="#{prop1}">
      #{prop1}
   </p:column>
</p:dataTable>


<p:dataTable .. id="tab2">
   <p:column sortBy="#{prop1}">
      #{prop1}
   </p:column>
</p:dataTable>

到目前为止,排序工作还不错,但如果我对其中一个表(我们称之为表a)进行排序,然后刷新页面(例如,通过激发h:commandButton),则会出现奇怪的行为,最后会出现NullPointerException。在这种情况下,所有表都有与表a相同的列高亮显示。此外,当我随后对表a以外的表进行排序时,就会出现以下异常:

共有1个答案

秦锐
2023-03-14

解决方案是将RowStatePreserved=“true”添加到包含其他表的表中。这是在Primefaces 5.1.14中添加的,是JSF2.1的一部分。

点赞:sdjavaudvk(http://forum.primefaces.org/viewtopic.php?f=3&t=43441).

<p:dataTable id="tab1" var="resumo" value="#{resumoView.resumos}" rows="20" 
                         paginator="true" 
                         rowsPerPageTemplate="5,10,15,20" 
                         rowStatePreserved="true">
...
 类似资料:
  • 我有一个p:dataTable,它存储已处理表单的结果,我执行以下操作: 填充表单值。 提交。 已填充数据表--对任何列进行筛选。 更改表单值。 提交。 使用新结果填充数据表。 对任意列排序--将显示来自#3的筛选结果。 我有一个用于筛选值的arraylist,但我没有在bean中对它做任何操作。提交时,我调用actionListener,该actionListener将dataTable强制转换

  • 我开始在我的项目中使用primefaces,我马上就遇到了问题。我有一个列表,其中包含一些我用实体管理器从数据库中获取的东西,我在primefaces数据表的视图中显示了它。在我的后台bean中,我有:List getList(),在这里我使用实体管理器从数据库中检索记录,并立即返回。。 和myService: 我的豆子: 视图: 这种方式primefaces排序不起作用,我在堆栈上的某个地方读到

  • 当xhtml运行时,数据表会显示出来,但只有一列显示为可用于排序(即,标题中有向上/向下箭头图标)。 dataTable有两个问题: 只有一列(年份)显示为可用于排序。(Year是Car类中“int”类型的属性,而其他三列是String类型,因此问题的一个方面是String字段忽略了sortby=“#{Car.xxx}”标记。) 年份列实际上是不可排序的。点击年份标题的向上/向下箭头没有效果。当点

  • 我使用的是PrimeFaces 2.2和JSF 2.0.3。 我有一个包含以下数据表的xhtml视图: ..具有以下背衬豆: 注意母亲姓名列上的“commandLink”和出生日期列上的“sortBy”。 我遇到了一个奇怪的问题,似乎仅限于IE,如果我按DOB对数据进行排序,然后分页到最后一页并单击表中最后一条记录的commandLink,它会触发两个action事件。第一个事件正确地报告了我单击

  • 分页 使用 limit 和 offset 来控制分页数据: limit 指定该请求返回的结果个数 offset 偏移量,指定该请求返回的结果的起始位置 默认 limit 为 20, offset 为 0,我们也可以手动指定 limit 和 offset 来控制。例如,每页展示 100 条数据,需要获取第五页的数据,将 limit 设置为 100、offset 设置为 400 即可。limit 最大

  • {% tabs first=”SDK 1.1.0 及以上版本”, second=”SDK 1.1.0 以下版本” %} {% content “first” %} SDK 1.1.0 及以上版本 分页 使用 limit 和 offset 来控制分页数据: limit 指定该请求返回的结果个数 offset 偏移量,指定该请求返回的结果的起始位置 默认 limit 为 20, offset 为 0,