チェッククラス-Library変更機能

JIS X 0213文字の対応を行う事を目的として、チェッククラスのライブラリ変更機能 が追加されました。
標準チェック時に使用する、文字の長さの判定、使用可能文字の判定 などを入れ替えることが可能にになります。
この設定はConfigにて行うことで、チェッククラス全体に反映されるようになります。

Library変更 対象範囲について

Library変更機能の対象範囲は、以下の2つになります。

  1. Webtribe/VisualFrame標準のチェッククラスを使用している場合
  2. DefaultCheckClass#checkCommon メソッドを実行している場合

独自作成されたチェッククラスを使用し、DefaultCheckClass#checkCommonを実行していないチェッククラスには 設定が反映されませんので、ご注意ください。

Library種類

製品標準で用意しているライブラリは以下になります。
全て jp.ne.mki.wedge.pub.data.check のパッケージに含まれています。
詳しい説明は リンク先のJavaDocを参照してください。

DefaultCheckLibrary
今までのチェックと同じ動作を行うチェックライブラリです。
このライブラリでは サロゲートペアが入力されることは想定していませんので、ご注意ください。
旧バージョンとの互換のため、設定なしの場合はこのLibraryがデフォルトで適用されます。
CodePointByteCheckLibrary
バイトチェックを行うチェックライブラリです。
バイト変換時の文字コードをUTF/8,16などにすることにより、サロゲートペアの使用も可能です。
CodePointLengthCheckLibrary
長さのチェックがコードポイントでの桁数でのチェックを行います。
DMC/データ型の長さを 文字桁数 の設定にする必要がありますが、桁数でのチェックのため、エラーメッセージが使用ユーザにとって分かりやすいというメリットがあります。
MS932CheckLibrary
MS932にて変換可能な文字のみ許可するチェックライブラリです。
長さのチェックは現状通りバイトチェックですが、サロゲートペア/結合文字 などが含まれないため、MS932などの文字コードにてバイト数によるチェックが可能になります。
NoSurrogateCheckLibrary
サロゲートペアの文字のみ許可しないチェックライブラリです。
NoSurrogateNoCombiningCheckLibrary
サロゲートペア/結合文字の文字のみ許可しないチェックライブラリです。

設定方法

設定はConfigにて行います。

Configファイルの config/module/setting/check のノードの下に、 checklibrary ノードを作成し、class属性にLibraryクラス名、resource属性にメッセージリソースパス を指定します。
Configファイルは、RunClientの場合は RunClient.wdgです。

Byte変換時の文字コードの指定は、 現状通り config/module/bytecheck ノードにて指定します。

Library作成方法

チェックLibraryは任意に作成することが可能です。
jp.ne.mki.wedge.run.interfaces.CheckLibraryInterface のインターフェースを実装されているクラスであれば 設定が可能です。

基本的に標準チェックを実行するが、データタイプに関わらず特定の文字をエラーとしたい場合には、 標準提供チェックLibraryで使用している 抽象クラスAbstractCheckLibrary を継承して作成することも可能です。
標準提供チェックLibraryのソースは、製品購入済みでサポート契約されているお客様にはご提供可能です。
詳しくはサポートまでお問い合わせください。

メッセージリソース変更方法

チェックメッセージは ResourceBundleの仕組みを用いて、 外部Propertiesファイルより指定しています。
製品標準で使用されているメッセージリソースの内容は以下になります。

jp.ne.mki.wedge.pub.data.check.CheckLibraryMessageVer1_ja.properties

DefaultCheckLibraryのライブラリを使用 する場合に使われるメッセージリソースです。
ver1.2.0-11以前と同じメッセージ内容になります。

jp.ne.mki.wedge.pub.data.check.CheckLibraryMessageVer2_ja.properties

DefaultCheckLibrary以外のライブラリを使用 する場合に使われるメッセージリソースです。

独自のメッセージ文字列に置き換えたものを、propertiesファイルとして作成(native2asciiの変換が必要)し、 クラスパスに追加、Configにパスを設定することにより反映されるようになります。

たとえば、「SampleCheckMessage_ja.properties」というファイルを指定し、 リソースのパス(JARの中に配置しているパス)の位置を jp/ne/developer/SampleCheckMessage_ja.properties とした場合には、 Configでの指定は
<checklibrary ・・・(省略)・・・ resource="jp.ne.developer.SampleCheckMessage" />
になります。

Valid XHTML 1.1