0

RequestFactory でデータを取得する汎用メソッドを作成しようとしています。アイテム (ジェネリック) のリストを取得するために Request で発火を実行するメソッド getData があります。問題は、返された 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 に答える