[検証ルール] ダイアログ

このダイアログでは、入力フォームの検証ルールを設定します。検証は、送信データから構築されるフォーム Bean に適用されます。このダイアログでは、以下のものを指定します。

このダイアログを開く方法

  1. [ページ フロー エディタ] で、フォーム Bean パラメータを持つ任意のアクション (フォーム Bean アイコンによって示される) を右クリックします。フォーム Bean アイコンは、アクション アイコンの右下隅にボックスのあるアイコンです。

               
  2. [検証ルール] を選択します。
  3. [アクションのスコープ]、[フォーム Bean のスコープ]、または [ページ フローのスコープ] のうち、いずれかのスコープを選択します。

右クリックしたアクション、フォーム Bean によって、検証されるフォーム Bean が決まります。

選択したスコープによって、検証用アノテーションの場所と種類が決まります。

このダイアログの使用方法

最上位ノード

[プロパティ] 領域の最上位ノードには、検証が適用されるフォーム Bean が表示されます。上の図では、フォーム Bean customerManagement.CustomerManagementController.GetCustomerByIdFormBean に検証が適用されます。

[ページ フローのデフォルト メッセージ バンドル] フィールドでは、検証エラーの発生時に使われる一連のエラー メッセージを指定します。ここで指定したバンドルがページ フロー クラス内のすべての検証エラーに対するデフォルトのバンドルとなり、アクションのスコープまたはフォーム Bean のスコープで指定されない限り、このバンドルが使用されます。詳細については、「[メッセージ バンドルの設定] ダイアログ」を参照してください。

フィールド レベルのノード

[プロパティ] 領域のフィールド レベルのノードには、特定のフォーム Bean のすべてのフィールドが表示されます。フィールド レベルのノードでは、単純なタイプの場合は緑色のボール アイコン (上図を参照) で、複雑なタイプの場合は「C」とマークされた大きめの緑色のボールで示されます。下にあるフォーム Bean には、Customer というフィールドが 1 つあります。

[表示名 (省略可能)] セクションのフィールドでは、検証エラー メッセージの生成時に、検証対象のプロパティに異なる名前を使うことができます。この名前は、リテラル テキストとして、または関連バンドルのメッセージ キーとして指定できます。代替名を使用した場合、[lastName は必須です] というエラー メッセージの代わりに、[last name フィールドが必須です] とすることができます。

検証エラー メッセージの基本的な処理方法としては、以下の 3 つのオプションがあります。

  1. フレームワーク ベース。たとえば、Struts 検証エラー メッセージ処理を使用できます。
  2. アノテーション ベース。このオプションでは、エラー メッセージは、検証用アノテーションに直接格納されます。
  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

[キー] フィールドには、デフォルトのバンドルで利用可能なすべてのキーがリストされます (存在する場合)。このリストからキーを選択すると、[表示名] フィールドに関連メッセージが表示されます。メッセージに対して行った編集は、すべてバンドルに保存されます。[キー] フィールドに新しいキーを直接入力することもできます。

ロケール ノード

[プロパティ] 領域のロケール ノードでは、検証ルールの適用先ロケールを指定します。ロケール ノードは、地球型のアイコン (上図を参照) で示されます。

新しいロケール固有のルールを作成するには、プロパティ レベルのノードを右クリックして、[新しい検証ロケール] を選択します。

[すべて] ロケールが各プロパティに対してデフォルトで指定されます。各ロケールに適用する固有の検証ルールをここで指定します。

ルール ノード

ルール ノードでは、特定の検証ルールを指定します。ルール ノードは、鍵のアイコン (上図を参照) で示されます。

新しい検証ルールを作成するには、ロケール アイコンを右クリックし、目的のルール タイプを選択します。ルールのプロパティおよびエラー メッセージは、このダイアログの右側で指定します。

関連トピック

[メッセージ バンドルの設定] ダイアログ


さらにヘルプが必要ですか。質問は Workshop ニュース グループまでお寄せください。