Primefaces保存/传递筛选数据表结果列表

Primefaces保存/传递筛选数据表结果列表,primefaces,filter,datatable,render,Primefaces,Filter,Datatable,Render,目前,我正在使用具有排序/筛选功能的datatable从数据库中成功显示图像元数据。在我的数据表下面,我正在使用第三方image coverflow()成功显示我的图像。此时,我使用相同的列表来显示这两个。在我过滤了datatable中的数据之后,我需要用过滤后的datatable结果动态更新coverflow中的图像列表 使用PrimeFaces执行此操作的最佳方法是什么?有人能给我指出一个有效的例子吗 这是我的密码: screenshotData.xhtml #{img.id} ....

目前,我正在使用具有排序/筛选功能的datatable从数据库中成功显示图像元数据。在我的数据表下面,我正在使用第三方image coverflow()成功显示我的图像。此时,我使用相同的列表来显示这两个。在我过滤了datatable中的数据之后,我需要用过滤后的datatable结果动态更新coverflow中的图像列表

使用PrimeFaces执行此操作的最佳方法是什么?有人能给我指出一个有效的例子吗

这是我的密码:

screenshotData.xhtml



#{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。