注意していただきありがとうございます。解決できない奇妙な問題があります。mongoDB のコンテンツでマップされたウィケットを使用して DataTable を作成しました。また、Tomcat7 と Eclipse を使用しています。
ただし、並べ替える列を選択するたびに、データ プロバイダーの iterator メソッドの getSort() メソッドは、常にデフォルト値と同じ値を返します。
public SortableGalaxyDataProvider() {
setSort("name", SortOrder.ASCENDING);
}
@Override
public Iterator<? extends Galaxy> iterator(long first, long count) {
SortParam<String> sort = getSort(); //is always the same
私のページの初期化はこのように行われます
[編集] インジェクションにSpringを使用しているため、GalaxyTableページに持っています。
@Inject
SortableGalaxyDataProvider galaxyProvider;
public GalaxyTable() {
List<IColumn<Galaxy, String>> columns = new ArrayList<IColumn<Galaxy, String>>();
columns.add(new PropertyColumn<Galaxy,String>(new Model<String>("Name"),"name","name"));
columns.add(new PropertyColumn<Galaxy,String>(new Model<String>("Type"),"type","type"));
columns.add(new PropertyColumn<Galaxy,String>(new Model<String>("Ancestors"),"ancestors","ancestors"));
columns.add(new PropertyColumn<Galaxy,String>(new Model<String>("Radius"),"radius","radius"));
add(new DefaultDataTable<Galaxy, String>("galaxies", columns, galaxyProvider, 10));
}
テーブルに使用されるhtml行は次のとおりです
<wicket:extend>
<table cellspacing="0" wicket:id="galaxies">[table]</table>
</wicket:extend>
多くの例を探しましたが、誰も同じ問題を抱えているようには見えません。最初の表示は正常で、コンテンツを移動できますが、並べ替え状態が変化しないため、並べ替えられません。
どんな手掛かり ?
ありがとう