検証が失敗したときに表示される検証メッセージをカスタマイズするにはどうすればよいですか?
ここに私が持っているコードがあります:
<h:form>
<p><h:inputText
id="userNo"
title="Type a number from 0 to 10:">
<f:validateLongRange
minimum="3"
maximum="6"/>
</h:inputText>
<h:commandButton id="submit" value="Submit"
action="response"/>
</p>
<h:message showSummary="true" showDetail="false"
id="errors1"
for="userNo"/>
</h:form>
現在、メッセージは次のようになっています。
j_idt10:userNo: Validation Error: Specified attribute is not between the expected values of 3 and 6.
これは特にユーザーフレンドリーではありません。
最も簡単な方法は、validatorMessage="my custom message"
タグに<h:inputText>
属性を設定することです。
より高度な方法については、この記事をお読みください JSF 2.0で検証エラーメッセージをカスタマイズする
ダニエルの答えに加えて、入力コンポーネントにlabel
属性を常に使用して、client-id(j_idt10:userNo:
)エラーメッセージから。
例えば。と
<h:inputText id="userNo" title="Type a number from 0 to 10:"
label="User number">
<f:validateLongRange
minimum="3"
maximum="6"/>
</h:inputText>
生成されます:
ユーザー番号:検証エラー:指定された属性は、期待値3と6の間にありません。
エラーメッセージのこの部分を動的に変更するために、ラベル属性をel式にすることもできます。
入力テキストのvalidatorMessageプロパティを使用できます。必須メッセージにはrequiredMessageプロパティを使用します。これは検証メッセージとは異なります。
<h:input text required ="true" validatorMessage="Enter user friendly message">
<f:validateLongRange
minimum="3"
maximum="6"/>
</h:inputText>