Sample : CAMC項目チェックダイアログのメッセージを変更する
実装サンプル : なし
CAMC(RunClient)にて自動的に表示される 項目チェックエラーダイアログの表示内容を
変更する方法の説明です。
製品標準のチェックを使用している場合、表示されるメッセージは、
[公式Document]
ClientJava / エラーメッセージ の CK から始まるコードの値が表示されます。
このメッセージを変更するには、以下の方法があります。
チェッククラスを自作する↑top
項目チェックエラーダイアログの表示メッセージは、チェッククラスから取得しています。
そのため、チェッククラスを自作し設定しなおす事によりメッセージが変更可能です。
製品標準チェッククラスは [製品Class]
jp.ne.mki.wedge.data.check.DefaultDataCheck
が使用されていますので、このクラスを継承し作成します。
作成したクラスの反映方法は [公式Document]
チェッククラス を参照してください。
項目チェックエラーダイアログ用 メッセージFormatterを自作する↑top
Ver1.2.0より、Formatterクラスを自作することによりメッセージを変更することも可能になりました。
Formatterクラスを使用した場合、リポジトリの修正を行なわなくても変更が可能になります。
ただし、全ての画面、項目 に対して反映されることに注意してください。
Formatter を設定する箇所は [公式Document] ClientJava / 設定 の 標準ダイアログ表示クラス の設定 になります。
check属性に指定されたクラスが 項目チェックダイアログ用のフォーマットクラスになります。
error属性に指定されたクラスが RunClientエンジンにてエラーをCatchした時に表示する エラーダイアログ用フォーマットクラスになります。
デフォルトで設定する、
[製品Class]
jp.ne.mki.wedge.pub.client.dialog.ErrorDialogFormatter,
[製品Class]
jp.ne.mki.wedge.pub.client.dialog.CheckErrorDialogFormatter
共に、製品購入時にソースが配布されていますので、購入済みのお客様はソースを参照してください。
項目チェックエラーダイアログ用Formatterを作成するには、
[製品Class]
jp.ne.mki.wedge.pub.client.dialog.CheckErrorDialogFormatter を継承して作成します。
実装をするメソッドは public synchronized String format(LogRecord record) です。
引数の java.util.logging.LogRecord は
jp.ne.mki.wedge.run.client.control.log.CheckErrorRecord にキャストが可能です。
CheckErrorRecord は LogRecord に加え、以下の情報が取得可能です。
- public DataCheckInterface getCheckClass()
チェッククラスを取得 - public int getErrorIndex()
エラー行数を取得 - public Container getContainer()
処理元となっているContainerを取得
実装例としては以下になります。
上記のコードでは、チェッククラスが製品標準クラスだった場合のみ、"不正な値が入力されています。\n" + 製品のエラーコード
を返すようにしています。
製品のエラーコードの詳細は [公式Document]
ClientJava / エラーメッセージ の CK から始まるコードの値 を参照してください。
設定方法は、
Config:RunClient.wdg の 標準ダイアログ表示クラスの箇所にて 作成クラスパスを指定します。
標準設定では dialogノードはコメントになっています。
今回は 項目チェッククラスのみの設定ですので、上記のような設定になります。
RunClientの実行クラスパスに作成したクラスを含め実行すると反映されます。
今回のクラスを反映すると、項目チェックエラーダイアログの表示は以下のように変更されます。
[公式Document] ClientJava / 設定
[公式Document] ClientJava / エラーメッセージ
[製品Class] jp.ne.mki.wedge.pub.client.dialog.CheckErrorDialogFormatter
リソースファイルを入替する(ver1.2.0-12より)↑top
ver1.2.0-12より製品標準チェック時のメッセージリソースファイルを入れ替えできるようになりました。
詳しくは Developer'sWorks チェッククラス-Library変更機能/メッセージリソース変更方法
を参照してください。