メッセージ API のメソッド req.error() は、シナリオからの AdminService の実装クラスと CatalogService の実装クラスの両方で使用します。このメソッドを使用して、検証が失敗した場合にエラーメッセージを出力します。これまで、レポートされるメッセージはテキストリテラルとしてハードコーディングされています。
このレッスンでは、メッセージの国際化対応方法について学習します。 ハードコーディングされたファイルを埋め込むのではなく、キーと値のペアとして個別のファイル (テキストバンドル) に保持されます。その後、キーはアプリケーションコードによって使用され、対応するテキストにアクセスします。つまり、キーの値は実際の言語依存テキストです。異なる言語をサポートするために、同じキーに対して翻訳されたテキストを提供する異なるファイルが更新されます (以下の図を参照)。

エラーメッセージを国際化するためのバンドルファイルの登録
詳細な手順は以下のとおりです。messages.properties という名前のファイルを _i18n、i18n、または assets/i18n というフォルダに作成します。messages.properties ファイルのフォルダは、プロジェクトディレクトリのすぐ下か、サービスモデルの定義に使用されるファイル (プロジェクト内の srv ディレクトリなど) を含むディレクトリに配置する必要があります。
注記
必要なテキストは、messages.properties ファイルでキーと値のペアとして更新されます。通常、テキストは英語で更新されます。プレースホルダを使用することができます。プレースホルダは、"{n} " の形式で記述されます。n は、0 で始まる自然数を実行します。
追加言語をサポートするために、命名規則 messages<_languageCode><_countryCode>.properties に従って、messages.properties ファイルと同じフォルダに追加ファイルが作成されます。国コードはオプションです。このようなファイル名の例としては、messages_de.properties、messages_fr_CA.properties、messages_es_MX.properties などがあります。
追加ファイルでは、messages.properties ファイルと同じキーが使用されます。ただし、キーの値は、言語コード、および該当する場合はファイル名の国コードに従って翻訳されます。
この例では、英語のテキストを含む messages.properties と、対応するドイツ語翻訳を含む messages_de.properties の 2 つの .properties ファイルが作成されています。
フォールバックチェーン
要求の処理時にキーを使用してテキストがクエリされ、言語に対してドイツ語が決定されたとします。messages_de.properties ファイルでキーのテキストが更新されている場合、このテキストはアプリケーションで使用されます。ただし、messages_de.properties ファイルがない場合、または使用されているキーが既存の messages_de.properties ファイルで更新されていない場合、CAP は messages.properties ファイルにフォールバックし、このファイルを使用してキーの値を決定しようとします。可能な場合、対応するテキストがアプリケーションで使用されます。messages.properties にも一致するエントリが含まれていない場合、アプリケーションではキー名がテキストとして使用されます。
注記

