2012-02-12 17 views
2

さまざまな種類の複合コンポーネントに対してREQUIREDメッセージを表示する方法はありますか?複合コンポーネントごとに異なるエラーメッセージを指定する

私は、入力フィールドの種類ごとにカスタムバリデータを実装することによってこれを行うことが

javax.faces.component.UIInput.REQUIRED=Please enter a value for {0} 
com.anon.sandbox.jsf.component.NameField.REQUIRED=ENTER A {} OR DIE 
com.anon.sandbox.jsf.component.EmailField.REQUIRED=You forgot to enter a {0} address 

メッセージバンドルに次のようなものを言うことができるように好きですが、与えられたと思います

その挙動のみIカスタマイズしたいのは、これが過度のようなエラーメッセージです。

答えて

1

requiredMessage属性を使用して指定します。あなたがいることを知っていたなかった場合については

<h:inputText ... requiredMessage="#{cc.resourceBundleMap.requiredMessage}" /> 

#{cc.resourceBundleMap}は、同じフォルダ内の複合成分と同じファイル名を持つ.propertiesファイルで識別される複合コンポーネント固有のリソースバンドルを指します。

だから、あなたは複合コンポーネントファイルfoo.xhtmlをしたことを想像し、その後、あなたは非常に同じフォルダに存在しfoo.properties(およびその結果としてfoo_en.propertiesfoo_es.properties、など)にローカライズされたメッセージを指定することができます。これらのローカライズされたメッセージは、前述の#{cc.resourceBundleMap}によって利用可能です。

+0

完璧 - コンポーネントごとにメッセージバンドルを持つことができませんでした。ありがとう。 –

+0

ようこそ。 – BalusC

関連する問題