ファセットでこのスニペットを指定すると、次のようになります。
<h:messages layout="table"></h:messages>
<br /><br />
First Name:
<h:inputText styleClass="inputText" id="firstName" validatorMessage="#{msg['error.userEdit.firstName']}">
<f:validateRequired></f:validateRequired>
<f:validateLength maximum="50"></f:validateLength>
<f:validateRegex pattern="^[A-Za-z]+$"></f:validateRegex>
</h:inputText>
フォームで検証を実行すると、フィールドで失敗した検証ルールの数に応じて、同じメッセージが0〜3個出力されます。フィールドごとに1つのメッセージに制限するにはどうすればよいですか?
わかりやすくするために、私のエラーメッセージはすべて3つのエラーを含み、「名は必須であり、50文字を超えることはできず、英字のみである必要があります。」と書かれているため、1回だけ印刷する必要があります。