一番簡単なValidationおよびStatelessForm + validationはダメよのお話

一番簡単なValidationと言えば、必須チェック。タイトルを必須にする対応を行います。
各フォームのコンポーネントhttp://wicket.apache.org/docs/wicket-1.3.2/wicket/apidocs/org/apache/wicket/markup/html/form/FormComponent.htmlのサブクラスのようです。ですので、setRequired(true)とすることで、必須チェックを行うことが出来ます。

…ただ、StatelessFormに対しては、必須チェックを行ってはいけないようです。
最初にBodyに"test"とだけ入力し、POSTすると必須チェックのメッセージが表示されます。そこでタイトルにも"title"と入力してPOSTすると。

あるぇ〜?まだ怒られるし、何か入力が変だし。

1日ほどずっとハマッていたわけですが、原因はStatelessFormにあるようです。単なるFormにすると直りました。うーん、状態を保持しないから、Validationに引っかかった場合の状態の管理が変になったという感じなのでしょうか…?
ちょっとソースを追いかけないと分かりません。分かりませんが、StatelessFormは名前の通り状態を保持しないフォームクラスです。これは、たとえばGoogleはてなの検索窓のように、データの登録ではなく検索系などに使うのが本来の使い方なのだと思います。あくまで予想ね。