JAVAでのメッセージ出力
Business model component(BMC)にはメッセージを保持するメッセージ・コンテナが使用できます。
また、そのサブクラスであるEventIFを実装したScreen eventでは、このメッセージ・コンテナに
メッセージを保持することで画面出力することができます。
実装手順
- メッセージ・コンテナを取得する。
- 1からメッセージ定義管理クラスを取得する。
-
メッセージIDならびにメッセージ・パラメータからメッセージを生成する。
(message, messageKeysに相当)
- 3で生成したメッセージをメッセージ・コンテナに設定する。
-
対象の項目IDをメッセージ・コンテナに設定する。
(targetFieldsに相当)
実装方法
import jp.co.cam.usax.configuration.MessageResourceIF;
import jp.co.cam.usax.rule.bean.MessageIF;
import jp.co.cam.usax.rule.bean.resource.AttributeResourceIF;
// 1.メッセージ・コンテナ
final MessageIF msgs = super.getMessage();
// 2.メッセージ定義
final MessageResourceIF msgsProp = msgs.getMessageResource();
// 3.メッセージ
final String msg = msgsProp.get("ID", new String[]{"パラメータ0", "パラメータ1"});
// 4.メッセージの設定
msgs.addError(msg);
// 5.対象項目IDの設定
msgs.addField("項目ID");
パラメータ用に項目名を取得する
項目名をJAVAで取得する場合は、下記の手順で取得できます。
// アトリビュート定義
final AttributeResourceIF attr = super.getAttributeResource();
// 画面項目名
String name = attr.getAttribute("項目ID").getName();
💡WEBパッケージを使用している場合は、パラメータに直接「{@attribute:アトリビュートID}」と
指定することで画面出力時に項目名に変換されます。