フィードバック メッセージを表示するときに Java コードのフィールド名の代わりに国際化されたフィールド名が表示されるように、フォーム コンポーネントの国際化されたラベルを正しく作成するにはどうすればよいですか?
私はこれを読みました:
https://cwiki.apache.org/WICKET/everything-about-wicket-internationalization.html
wicket の xhtml タグのドキュメント:
https://cwiki.apache.org/WICKET/wickets-xhtml-tags.html
<label wicket:for="name">
<wicket:label>
<wicket:message key="label.name"/>
</wicket:label>
</label>
<input wicket:id="name" type="text" wicket:message="placeholder:label.name" />
これにより、次のエラーが発生します。
Last cause: Expected close tag for '<wicket:label>' Possible attempt to embed
component(s) '<wicket:message key="label.name"/>' in the body of this
component which discards its body
wicket:message
を任意のテキストに置き換えると、関連するフィードバック メッセージにそのテキストが表示されます。
(関連する jira の問題があります: https://issues.apache.org/jira/browse/WICKET-3903ですが、これを修正するために何が行われ、何をしなければならないかはまだわかりません ...)
Javaでこれを行う方法があることがわかりました:
add(new TextField<String>("name").setRequired(true).setLabel(new Model<String>(getString("label.name"))));
どうにかしてこれをより快適な方法で行うことは可能ですか?