如何使用Vaadin Flow CallBackDataProvider解决'不兼容类型'错误

时间:2019-04-04 10:52:33

标签: java intellij-idea vaadin-flow vaadin10 jakarta-ee

我尝试为我的网格使用vaadin流制作一个callbackdataprovider。但是当我尝试创建它时,它返回一个不兼容的类型错误。

我已经将代码最小化为该问题的最简单的问题版本,并且仍然无法正常工作,我遵循了制作流程的繁琐流程指南,它与我的代码几乎相同:

dataProvider = DataProvider.fromCallbacks(
            query -> {  
                List<Person> people = new ArrayList<>();                
                return people;              
            },          
            query -> {          
                int i = 0;              
                return i;               
            });

这应该工作,但是我收到以下错误:

  

不兼容的类型:不存在类型变量T,F的实例,因此   com.vaadin.data.provider.CallbackDataProvider符合   com.vaadin.flow.data.provider.CallbackDataProvider

1 个答案:

答案 0 :(得分:0)

所有与Vaadin 10+(Flow)相关的类都在com.vaadin.flow软件包中。请使用该软件包中的DataProviderHere是一个代码示例:

import com.vaadin.flow.data.provider.*;

DataProvider<Person, Void> dataProvider = DataProvider.fromCallbacks(
            // First callback fetches items based on a query
            query -> {
                ...
                return persons.stream();
            },
            // Second callback fetches the number of items for a query
            query -> getPersonService().getPersonCount());