setErrorForComponentID()
sysLib.setErrorForComponentID() システム関数は、JSF ハンドラー内のフィールドとメッセージを関連付けます。
この関連付けは、Web ページのコンポーネントの ID に基づいて行われます。 JSF ハンドラーがこの関数を呼び出す場合、メッセージは、JSP の message または messages タグの位置に配置されます。
関連する Web ページが表示されたときに、メッセージが表示されます。 この関数は検証ルーチンの一部として使用するか、通知メッセージ用に使用することができます。
検証機能が sysLib.setErrorForComponentID() を呼び出した場合、この機能の終了時に Web ページが自動的に再表示されます。
複数のメッセージを 1 つのコンポーネントに関連付けることができます。 JSF ハンドラーが forward ステートメントを実行すると、メッセージは失われます。
構文
sysLib.setErrorForComponentID(
componentID STRING in,
msgKey STRING in
[, msgInserts STRING in])
- componentID
- メッセージに関連付ける Web ページ上のコンポーネントの ID。formName:componentName の形式で表します。ここで formName はコンポーネントを含む書式の ID で、componentName はコンポーネントの ID です。
- msgKey
- STRING 型との代入互換性のある任意の変数または式を入力できます。 msgKey は、実行時に使用されるメッセージ・リソース・バンドルまたはプロパティー・ファイルにキーを指定します。 キーがブランクの場合、メッセージはファイル内のすべてのメッセージの連結となります。
- msgInserts
- STRING 型と代入互換性のある 1 つ以上の変数または式を入力することができます。
各 msgInserts は、出力メッセージに挿入されます。
メッセージ・テキスト内の置換シンボルは、次の例のような中括弧で囲まれた整数です。
Invalid file name {0} - 挿入の配列を使用する sysLib.getMessage() と異なり、sysLib.setErrorForComponentID() では、置換の個々のパラメーターを使用します。
- msgText
- STRING 型との代入互換性のある任意の変数または式を入力できます。 これは、Web ページそのものと関連付けられたメッセージのテキストです。
例
次の例は、メッセージ・ファイル errorMessages_en_US.properties からの項目です。
badname = The name you entered, {0}, is not valid.
次の例は、このメッセージを使用するコードのセクションを示します。
userName STRING = getUserName(); // 入力を要求します
rc = validateUserName(userName);
if (rc < 0)
SysLib.setErrorForComponentID( "form1:CustName",
SysLib.getMessage( "badname", [ userName ] ) );
end
互換性
| プラットフォーム | 問題 |
|---|---|
| COBOL 生成 | setErrorForComponentID() 関数はサポートされません。 |
| JavaScript 生成 | setErrorForComponentID() 関数はサポートされません。 |