0

我正在尝试制作一个通用方法来使用 RequestFactory 获取一些数据。我有一个方法 getData 对请求执行 fire 以获取项目列表(泛型)问题是当我尝试将返回的 List arg0 分配给我的 ListDataProvider 时出现类型错误。

private ListDataProvider<T> dataProvider; 
. 
. 
. 
. 
public <T> void getData(Request<List<T>> specificRequest) { 
                specificRequest.fire(new Receiver<List<T>>() { 
                        @Override 
                        public void onSuccess(List<T> arg0) { 
                                assignDataProvider(arg0); 
                        } 
                }); 
                return ; 
} 

public <T> void assignDataProvider(List<T> arg0) { 
                this.dataProvider.setList(arg0); 
                //The method setList(List<T>) in the type ListDataProvider<T> is not 
applicable for the arguments (List<T>) 
                this.dataProvider= new ListDataProvider<T>(arg0); 
                //Type mismatch: cannot convert from 
com.google.gwt.view.client.ListDataProvider<T> to 
com.google.gwt.view.client.ListDataProvider<T> 
} 

如何使用从 arg0 获得的数据,以便将其分配给我的 ListDataProvider?

4

1 回答 1

0

如果您在声明 dataProvider 时没有出错,则类型 T 被定义为类声明中的参数。
如果是这样,您应该从方法声明中删除。

祝你好运!

于 2012-04-10T06:29:53.243 回答