私は Wicket 6.1 を使用しており、ページ フローの URL をより適切でブックマークしやすいものにする方法を見つけようとしています。
私はタイプ セーフ コンストラクターをよく使用するため、コードは通常次のようになります。
class SearchResultsPage extends WebPage {
public SearchResultsPage(SearchResultsModel model) {
// display the data in the model
}
}
ページに移動するには、次のようなコードがあります。
AjaxButton ajaxButton = new IndicatingAjaxButton("ajaxbutton") {
@Override
protected void onSubmit(AjaxRequestTarget target, Form<?> form) {
SearchResultsModel results = search(kriteriamodel)
getRequestCycle().setResponsePage(new SearchResultsPage(results));
}
@Override
protected void onError(AjaxRequestTarget target, Form<?> form) {
target.add(feedback);
}
};
結果ページに到達すると、URL は searchresult?5 のようになります。
検索パラメータを URL にエンコードして、ユーザーが後で参照できるようにブックマークできるようにしたいと考えています。
PageParameters マップを使用して、オブジェクトをその構造との間で手動でマッピングできることを認識しています。しかし、私はよりエレガントなソリューションを探しています。
- ページをよりブックマークしやすくするために、ページまたはモデルが実装する必要のある巧妙なインターフェイスへのポインターを探しています。
- 例もいいでしょう。
- 理想的には、ページ/モデル内のコードのみを変更する必要があります。
ありがとう。