このダイアログでは、入力フォームの検証ルールを設定します。検証は、送信データから構築されるフォーム Bean に適用されます。このダイアログでは、以下のものを指定します。
右クリックしたアクション、フォーム Bean によって、検証されるフォーム Bean が決まります。
選択したスコープによって、検証用アノテーションの場所と種類が決まります。
[プロパティ] 領域の最上位ノードには、検証が適用されるフォーム Bean が表示されます。上の図では、フォーム Bean customerManagement.CustomerManagementController.GetCustomerByIdFormBean に検証が適用されます。
[ページ フローのデフォルト メッセージ バンドル] フィールドでは、検証エラーの発生時に使われる一連のエラー メッセージを指定します。ここで指定したバンドルがページ フロー クラス内のすべての検証エラーに対するデフォルトのバンドルとなり、アクションのスコープまたはフォーム Bean のスコープで指定されない限り、このバンドルが使用されます。詳細については、「[メッセージ バンドルの設定] ダイアログ」を参照してください。
[プロパティ] 領域のフィールド レベルのノードには、特定のフォーム Bean のすべてのフィールドが表示されます。フィールド レベルのノードでは、単純なタイプの場合は緑色のボール アイコン (上図を参照) で、複雑なタイプの場合は「C」とマークされた大きめの緑色のボールで示されます。下にあるフォーム Bean には、Customer というフィールドが 1 つあります。
[表示名 (省略可能)] セクションのフィールドでは、検証エラー メッセージの生成時に、検証対象のプロパティに異なる名前を使うことができます。この名前は、リテラル テキストとして、または関連バンドルのメッセージ キーとして指定できます。代替名を使用した場合、[lastName は必須です] というエラー メッセージの代わりに、[last name フィールドが必須です] とすることができます。
検証エラー メッセージの基本的な処理方法としては、以下の 3 つのオプションがあります。
[ソース] ドロップダウンには、以下の 3 つの対応する値がリストされます。
(1) [フレームワーク デフォルト] : この設定では、すべてのフレームワーク ベースのエラー メッセージが使われます (これらのメッセージに対してフレームワークがコンフィグレーションされている場合)。たとえば、アプリケーションが Struts 検証を使うようにコンフィグレーションされている場合、このオプションを選択します。
(2) [ファイル内のアノテーション] : この設定では、[表示名] フィールド ([キー] フィールドの直下) の値によって、検証用アノテーションの displayName 属性が設定されます。たとえば、[表示名] フィールドに「The Customer field」を入力すると、次の検証用アノテーションが作成されます。
@Jpf.ValidatableProperty( ... displayName="The Customer field", ... ) ...
(3) [ページ フローのデフォルト メッセージ バンドル] : この設定では、[表示名] の値によって、デフォルトのメッセージ バンドルからエラー メッセージを取得するために使われるメッセージ キーが指定されます (メッセージ バンドル ファイルを設定するには、「[メッセージ バンドルの設定] ダイアログ」を参照してください)。
たとえば、以下のような設定を仮定します。
この場合、以下の検証用アノテーションが作成されます。
...messageBundles = { @Jpf.MessageBundle(bundlePath = "validationError.properties") ...@Jpf.ValidatableProperty(displayNameKey = "custKey", propertyName = "customer")
また、次のキーがバンドル ファイルに書き込まれます。
custKey=The Customer field
[キー] フィールドには、デフォルトのバンドルで利用可能なすべてのキーがリストされます (存在する場合)。このリストからキーを選択すると、[表示名] フィールドに関連メッセージが表示されます。メッセージに対して行った編集は、すべてバンドルに保存されます。[キー] フィールドに新しいキーを直接入力することもできます。
[プロパティ] 領域のロケール ノードでは、検証ルールの適用先ロケールを指定します。ロケール ノードは、地球型のアイコン (上図を参照) で示されます。
新しいロケール固有のルールを作成するには、プロパティ レベルのノードを右クリックして、[新しい検証ロケール] を選択します。
[すべて] ロケールが各プロパティに対してデフォルトで指定されます。各ロケールに適用する固有の検証ルールをここで指定します。
ルール ノードでは、特定の検証ルールを指定します。ルール ノードは、鍵のアイコン (上図を参照) で示されます。
新しい検証ルールを作成するには、ロケール アイコンを右クリックし、目的のルール タイプを選択します。ルールのプロパティおよびエラー メッセージは、このダイアログの右側で指定します。