[Wicket-ja-user 466] Re: コンポーネントに対応するHTMLタグを動的生成したい

Back to archive index

Tsutomu YANO t_yano****@me*****
2010年 7月 6日 (火) 21:22:34 JST


矢野です。

まず、HTMLを出力するには、FormコンポーネントのonComponentTagBody()メソッドをオーバーライドすることで可能です。オーバーライドメソッド内で、getResponse().write()メソッドを使えば、文字列を直接出力できますので、整形済みHTMLを出力するとよいでしょう。

実際、同様の処理がFormクラスのonComponentTagBody()内で行われています。

ちなみに、トークンを検証する目的が、XSRF対策などであれば、WicketはFormへのサブミット用URLにページIDを含むので、ページIDが分からない限り、外部からサブミットすることができません。

ただ、ページIDの生成ロジックが単調で、1から順に割り振られるだけです。ここをランダムな整数とすることで、ページIDを推測不能なものに変えることができます。そうすると、ページを表示するたびにフォームのサブミットURLは変化します。

この方法の場合は、SessionクラスのnextPageId()をオーバーライドします。

---------------------
 矢野 勉(やの つとむ) 
t_yano****@me*****
benbr****@mac*****




2010年7月05日 01:30PM、Junichi Kato <j5ik2****@gmail*****>のメッセージ:

川嶋さん
加藤です。
2重サブミット防止のロジックは既に実現できているのですが、HTMファイルのフォームタグ内にhidden 用のinput タグを書きたくないの(フォームの数が多いため)で、ロジック側でinput タグを生成したいと思っています。
2010/07/05 13:04 "川嶋誠司" <seiji****@waltz*****>:

加藤様

川嶋です

目的は2重submitの防止ですか?

であれば
boolean isSubmit = false
的なフラグでJava側で制御すれば良いと思います


> みなさま
> 加藤です。
>
> 今、Wicket 1.4でトークンを発行してサブミット時にトークンを検証するバリデータを作ろうとしています。
>
> その際に、フォームにはトークンを格納する...
_______________________________________________
Wicket-ja-user mailing list
Wicke****@lists*****
http://lists.sourceforge.jp/mailman/listinfo/wicket-ja-user
_______________________________________________
Wicket-ja-user mailing list
Wicke****@lists*****
http://lists.sourceforgejp/mailman/listinfo/wicket-ja-user
-------------- next part --------------
HTMLの添付ファイルを保管しました...
Télécharger 



Wicket-ja-user メーリングリストの案内
Back to archive index