0

ウィケットに次のコードがあると仮定します

TextField foo = ...;
TextField bar = ...;
bar.add(new AjaxEventBehavior("change") {

        @Override
        protected void onEvent(AjaxRequestTarget target) {
            // do something
        }

    });

さらに、foo と bar が、Model として CompoundPropertyModel を持つフォーム「dummyForm」のメンバーであると仮定します。「foo」フィールドの初期値は「Max」です。

ここで、Wicket-Tester を使用して簡単なテストを作成します。

formtester.setValue("foo", "Petra");
wickettester.executeBehavior(...); // execute behaviour on field bar
wickettester.getRequest().getPostParameters();
wickettester.getComponentFromLastRenderedPage("foo").getDefaultModelObjectAsString();

このテストを実行すると、最初の行でポスト パラメータ ("foo"、"Petra") がモック リクエストに追加されます。2 番目のステートメントの動作は formsubmit-behaviour ではないため、CompoundPropertyModel は更新されません。したがって、4 行目では、foo のモデル値は「Petra」ではなく「Max」のままです。ビヘイビアーの処理後にポストパラメーターがクリアされたことに気付いたので、テストの 3 行目でもパラメーターの空のリストが表示されます。

それでは、私の質問:フォームを送信しないリクエスト間でリクエストパラメータを「安全に」するための推奨される方法は何ですか?

ご回答ありがとうございます

4

1 に答える 1

0

恐れ入りますが、ご自身で転送していただく必要があります。#getLastRequest()の代わりに使用できます#getRequest()

于 2015-03-03T16:00:54.463 に答える