Primefaces保存/传递筛选数据表结果列表
目前,我正在使用具有排序/筛选功能的datatable从数据库中成功显示图像元数据。在我的数据表下面,我正在使用第三方image coverflow()成功显示我的图像。此时,我使用相同的列表来显示这两个。在我过滤了datatable中的数据之后,我需要用过滤后的datatable结果动态更新coverflow中的图像列表 使用PrimeFaces执行此操作的最佳方法是什么?有人能给我指出一个有效的例子吗 这是我的密码: screenshotData.xhtmlPrimefaces保存/传递筛选数据表结果列表,primefaces,filter,datatable,render,Primefaces,Filter,Datatable,Render,目前,我正在使用具有排序/筛选功能的datatable从数据库中成功显示图像元数据。在我的数据表下面,我正在使用第三方image coverflow()成功显示我的图像。此时,我使用相同的列表来显示这两个。在我过滤了datatable中的数据之后,我需要用过滤后的datatable结果动态更新coverflow中的图像列表 使用PrimeFaces执行此操作的最佳方法是什么?有人能给我指出一个有效的例子吗 这是我的密码: screenshotData.xhtml #{img.id} ....
#{img.id}
...............
Screenshot.java
@实体
@XmlRootElement
@表(name=“imgTable”,uniqueConstraints=@UniqueConstraint(columnNames=“id”))
公共类截图实现了可序列化的PhotoInterface{
私有静态最终长serialVersionUID=1L;
@身份证
@生成值
私人长id;
私有字符串用户;
私有时间戳时间;
--------能手/二传手---------
ScreenshotListProducer.java
@RequestScoped
公共类截屏列表制作人{
@注入
私人实体管理者;
私人列表截图;
@产生
@命名
公共列表getScreenshots(){
返回截图;
}
我发现这是一个有趣的问题,所以我做了一些研究。首先我有一个有趣的发现。然后我偶然发现。答案似乎是:
将此添加到
:
在bean中:
过滤器上的公共映射(AjaxBehaviorEvent事件){
DataTable=(DataTable)event.getSource();
List obj=table.getFilteredata();
//在这里做你的事
映射过滤器=table.getFilters();
回流过滤器;
}
感谢您对本问题和其他问题的所有评论 我将与PrimeFaces 5.1分享解决方案:
public Map<String, Object> onFilter(AjaxBehaviorEvent event) {
System.out.println("FILTRAMOS LA TABLA");
DataTable table = (DataTable) event.getSource();
List<Actual> obj = table.getFilteredValue();
listaActivosFijosFiltrados = obj;
if (obj != null) {
System.out.println("filtered = " + obj.size());
} else {
System.out.println("No records found");
}
Map<String, Object> filters = table.getFilters();
return filters;
}
过滤器上的公共映射(AjaxBehaviorEvent事件){
System.out.println(“FILTRAMOS LA TABLA”);
DataTable=(DataTable)event.getSource();
List obj=table.getFilteredValue();
listaActivosFijosFiltrados=obj;
如果(obj!=null){
System.out.println(“filtered=“+obj.size());
}否则{
System.out.println(“未找到记录”);
}
映射过滤器=table.getFilters();
回流过滤器;
}
感谢您提供的信息!我实现了此功能,可以在outputPanel中显示过滤后的结果!目前,我一直在尝试在datatable中显示选定记录的图像。我似乎对ContentFlow实现存在问题,超出了此问题的范围。您可以在此处查看此问题:再次感谢您的帮助!!继续很高兴听到你的进步。如果我的答案回答了你提出的问题,请随意将答案标记为已接受,这就是我所需要的全部感谢;-)顺便说一句,欢迎来到stackoverflow。