不具合報告を受けた内容の速報と、patch提供を行います。
このページにて提供している パッチの対象製品バージョンは 1.1.3 になります。
Ver1.1.0 〜 Ver1.1.2 をお使いのお客様は、Ver1.1.3 への バージョンアップをお願いします。
(製品ご購入のお客様には CD にて送付いたしております。)
設定方法については、patch反映手順(Ver1.1.3)を参照して下さい。
不具合修正内容については、以下の「詳細内容」を参照して下さい。
patch提供情報
詳 細 内 容
■: | これまでの動作が変更される懸念がある修正 |
■: | 影響がほとんど無いと考えられる修正 |
■: | 特定の条件の時のみ、動作が変わる可能性のある修正 |
■: | 機能追加 |
■: | ツール等修正(実行エンジンには影響を与えない) |
■: | 仕様変更・その他 |
■ 固定長属性を指定したデータ型のSAMC内チェック |
[対象] RunApServer |
DMCで定義した固定長属性が、SAMCで反映されていない問題が見つかり、修正されました。
この問題はSAMCでロジッククラスを使用してチェックを行なっている場合に発生します。
CAMC・HAMCでのチェックは、固定長を使用している場合も問題なく動作いたします。
■ HTMLGatewayアイテムのエラー出力処理を修正 |
[対象] HTMLGateway |
HTMLGatweayアイテム内で発生した例外情報に関して、これまで標準出力に情報を出力していましたが、
HTMLGateway標準のログファイルへと出力するように修正をしました。
■ HTML出力時の不正インデックス参照 |
[対象] HTMLGateway |
HTMLRegisterで COLTEXTアイテムの中身を出力する際に、
存在するよう素数よりも大きなインデックスにアクセスをしたときの動作をコンフィグで切り替えられるように修正をしました。
この機能は主に旧バージョン(1.0.x)との互換のために使用されます。
この機能を有効とすると、不正なIndexを参照をした時にエラーが発生されなくなる問題があり、
旧バージョンからのバージョンアップ以外での使用では推奨しません。
この機能を有効としたい場合は、下記のようにコンフィグを設定してください。
<modify servletpath="" exceedrow="true" />
|
■ DecisionType=Errorでのサブトランザクション実行時の制御情報受渡し |
[対象] RunApServer |
DecisionType=Errorの処理内で サブトランザクションを実行した際、コントロールレコードの内容の一部を
呼び出し先トランザクションから取得できるように修正されました。
この機能は主に旧バージョン(1.0.x)との互換のために使用されます。
この機能を有効とすると、不正なIndexを参照をした時にエラーが発生されなくなる問題があり、
旧バージョンからのバージョンアップ以外での使用では推奨しません。
この機能を有効としたい場合は、下記のようにコンフィグを設定してください。
<subtransaction timing="error">
<resultparse>
<!-- 41番目の制御情報(サーバパラメータ)を サブトランザクションから受け取る -->
<controlrecord id="41" />
</resultparse>
</subtransaction>
|
■ PLSQLで TEXTアイテムの値が 設定されない問題 |
[対象] RunDBServer |
PLSQLを呼び出すときに、その入力アイテムに以下の条件が満たされると、バインド変数設定の二回目以降で TEXTアイテムの値がnullになる問題が見つかりました。
- TEXTアイテムとCOLTEXTアイテムが混じっている
- COLTEXTが二件以上のデータがある
この問題に対し、バインド変数設定の二回目以降も正常にTEXTアイテムの値が設定されるよう修正を行いました。
■ QueryTimeout設定機能の追加 |
[対象] RunDBServer |
JDBCのStatementクラスに対し、QueryTimeoutが設定できるようになりました。
QueryTimeoutを設定したい場合、RunDBServer.wdgに対し 以下のように追加を行ってください。
<connection>
<check type="unuse" interval="30000" timeout="900000" />
<check type="querytimeout" timeout="20" />
</connection>
|
上記例の場合、20秒以上処理時間がかかった場合にSQLExceptionが発生し、処理が中断されます。
この タイムアウト時間が有効となるのは、あくまでSQLの実行時間のみとなります。
SQLの処理完了後、結果を取得する処理中は タイムアウト時間の対象となりません。
挙動に関しては JDBCドライバの実装に依存しますので、ご使用になられてます JDBCドライバにて Statement#setQueryTimeout()がサポートされていない、もしくは Statement#setQueryTimeout() の機能が 仕様に則られていない場合は、正常に動作しないのでご注意ください。
なお、独自で作成した DC基本クラスで、『executeSql(DcRequest req)』 メソッドをオーバライドしているクラスには、この設定は有効となりません。
独自で作成したDC基本クラスにコンフィグの値を設定したい場合は、Statementクラスを作成した後に、
setQueryTimeout(java.sql.Statement)
を呼び出してください。
例)
statement = req.prepareStatement(sql);
setQueryTimeout(statement);
|
【パッチの適用による 予測される影響範囲】
特になし。
■ RMIモジュールの参照関係の強化 |
[対象] RunApServer, RunDBServer, ToolApServer, ToolDBServer, ToolAp4Engine |
RMIRegistryにバインドされたサーバエンジンが GCの対象とならないように、インスタンスを static領域に確保するよう修正をしました。
RMIRegistryから 一定時間毎に疎通確認のSocket通信が送信されており、一定時間 (デフォルトで10分) の間この通信が行われない場合は、バインドされたサーバエンジンが GCの対象となって、アプリケーションが終了します。
この修正後は、一定時間経過後も GCの対象となることがなくなるため、アプリケーションが終了することはありません。
環境によっては、稀にこのSocket通信が正常に行われず、アプリケーションが終了してしまう可能性があるようです。
エラーが表示されずにWebtribeのサーバエンジンが自動的に終了をするようなことがあった際には、このパッチを適用することで、問題が改善される可能性があります。
【パッチの適用による 予測される影響範囲】
特になし。
■ バージョン情報出力時にNullPointerExceptionが出力される問題を修正 |
[対象] 全エンジン |
製品に含まれるJarファイルを 「パッケージオブジェクトを生成しないCloassLoader」で読み込みを行った場合、
バージョン情報出力時に NullPointerExceptionが出力される問題が見つかりました。
通常使用する場合は、このExceptionは出力されません。
独自のClassLoaderを使用しているIDE等から 製品を起動したときのみ、
このような問題が発生することがございます。
この問題に対し、Exception情報が出力されないように修正を行いました。
【パッチの適用による 予測される影響範囲】
特になし。
■ RunClient 1.1.3-15 適応後、画面の解放処理で発生した問題の対応 |
[対象] RunClient |
この問題は 1.1.3-15で対応した『Beforeの画面終了処理時NullPointer発生 の不具合修正』の修正によって、発生するようになった 問題となります。
RunClient 1.1.3-14 まではコンボボックスのBeforeイベントの処理で 画面を閉じたときに、コンボボックスのポップアップが残ったままとなる問題がありました。
この問題に対して 1.1.3-15で 画面を閉じた際の解放処理の手順に修正を加えております。
この 修正を加えたことにより Swing 内部で原因不明の問題が発生し、今回の問題が発生するようになりました。
(この問題自体は JRE1.5 で改善されていることが確認できておりますが、JRE1.4で 改善される可能性は低いかと考えております。)
1.1.3-16 では、Dialogを閉じた際の解放処理の手順を、1.1.3-14 と同じように戻してます。
そのため
- DIALOGの画面での コンボボックスのBeforeイベントで、画面を閉じると、ポップアップが残る。
という問題が発生することとなります。
【パッチの適用による 予測される影響範囲】
1.1.3-15を使用しており、コンボボックスのBeforeでフレームを閉じる処理を行っている場合は、
パッチ適用後に コンボボックスのポップアップが画面上に残ることになると予測されます。
この問題を回避したい場合は SwingUtilities.invokeLater()を用いて 画面を閉じる処理を遅延させるビジネスルールを作成してください。
通常のCloseFrameを使用せずに、このビジネスルールを使用することで問題を回避させることができます。
[ビジネスルール コードサンプル]
Runnable run = new Runnable(){
public void run(){
getFrame().processWindowEvent_Closing(true);
}
};
SwingUtilities.invokeLater(run);
|
■ DCTestに失敗する問題を修正 |
[対象] RunBatchServer |
WedgeServer 1.1.3-15 を適用後、DCTestを実行すると失敗する問題が見つかり、
この問題を修正しました。
【パッチの適用による 予測される影響範囲】
特になし。
■ SMCが起動できない問題を修正 |
[対象] RunBatchServer |
WedgeServer 1.1.3-15 を適用後、SMCジョブの起動に失敗する問題が見つかり、
この問題を修正しました。
【パッチの適用による 予測される影響範囲】
特になし。
■ WindowsVistaでのIME制御の問題を修正 |
[対象] RunClient |
WindowsVistaで稼動させた際に IME制御で不具合が数箇所見つかったため、これを修正しました。
2007/5/11 時点で、 Webtribe/VisualFrameでは Windows Vistaは正式にサポートしておりません。
【パッチの適用による 予測される影響範囲】
特になし。
■ Beforeの画面終了処理時NullPointer発生 の不具合修正 |
[対象] RunClient |
コンポーネントのBeforeイベントにて 画面終了などの処理が存在した場合、NullPointerException が発生する場合がありました。
この問題に対し、Exceptionが発生しないよう修正をしました。
【パッチの適用による 予測される影響範囲】
特になし。
■ 拡張タグで、括弧を含む式があるときの不具合を修正 |
[対象] HTMLGateway |
括弧を含む演算式があるとき、"-"や"!" がアイテムに格納されていると、
そのアイテムを「マイナス」「成否の逆転」の記号として判定をしてしまう問題が見つかりました。
例)
#IF (ITEM1 = "AAA")#
- ITEM1に "AAA"が 格納されていると、IFの処理が実行されます。
- ITEM1に "AAA"・"-" 以外の文字列が 格納されていると、IFの処理が動作しま
せん。
- ITEM1に "-"が 格納されていると Webtribeのシステムエラーとなります。
#IF ITEM1 = "AAA"#
といったように括弧を使ってない場合は、
ITEM1に "-"が格納されていても正しく動作します。
【パッチの適用による 予測される影響範囲】
特になし。
■ JDK/JRE 1.6をインストール後、パッチが適用されなくなる問題 |
[対象] RunClient |
JDK/JRE 6.0 をインストールすると、JWSのバージョンも 1.6 となります。
JWS 1.6 では これまでのバージョンと JARファイルの読み込み順番が異なります。
そのため、RunClientPatch.jar が上手く読み込まれないことがございます。
この問題に対応するためには、RunClientPatch.jar 1.1.3-03 以上のパッチを適用し、
その上で JNLPファイルを下記のように修正してください。
- RunClient.jar を main="false" とする。download を "lazy" とする。
- RunClientPatch.jar を main="true" とする。download を "eager" とする。
旧)
<j2se version="1.4*" <!-- initial-heap-size="64m" max-heap-size="256m" --> />
<jar href="lib/RunClientPatch.jar" main="false" download="lazy" />
<jar href="lib/RuleCommonClientPatch.jar" main="false" download="lazy" />
<jar href="lib/RunClient.jar" main="true" download="eager" />
<jar href="lib/RuleCommonClient.jar" main="false" download="lazy" />
<jar href="lib/user_rule.jar" main="false" download="lazy" />
<jar href="lib/camc.jar" main="false" download="lazy" />
<jar href="lib/pmc_desktop.jar" main="false" download="lazy" />
↓
新)
<j2se version="1.4*" <!-- initial-heap-size="64m" max-heap-size="256m" --> />
<jar href="lib/RunClientPatch.jar" main="true" download="eager" />
<jar href="lib/RuleCommonClientPatch.jar" main="false" download="lazy" />
<jar href="lib/RunClient.jar" main="false" download="lazy" />
<jar href="lib/RuleCommonClient.jar" main="false" download="lazy" />
<jar href="lib/user_rule.jar" main="false" download="lazy" />
<jar href="lib/camc.jar" main="false" download="lazy" />
<jar href="lib/pmc_desktop.jar" main="false" download="lazy" />
|
注意
この修正は、JDK 6.0 対応 となるもの ではありません。
JDK 1.4 と JDK 6.0 が 混在する環境で、
正しく JWSで起動させるための 修正となります。
■ 別ウィンドウをアクティブにした時の動作 |
[対象] RunClient |
編集可能な DefaultComboBox,FormattedComboBox に フォーカスが当たっている状態にて、
他画面 (VF画面、VF以外画面 両方を含む) を Active にした後、
リアルタイムチェックが入っている 入力エリア に マウスのクリックにより
フォーカスを設定すると、リアルタイムチェックが実行されない。
DefaultComboBox,FormattedComboBox 以外のコンポーネントにフォーカスがある状態
では上記の問題は発生しません。
【パッチの適用による 予測される影響範囲】
特になし。
■ IME入力中の CTRL+TAB による不具合 |
[対象] RunClient |
IME入力中(確定前)に、CTRL+TAB を押下することで、
リアルタイムチェックを無視して文字列が設定される問題が見つかりました。
この問題に対し、IME入力中は フォーカスの移動が行えないよう
修正を致しました。
【パッチの適用による 予測される影響範囲】
IME 入力時の GUIインターフェースが、この修正の内容に変更されます。
■ Base64 処理不具合修正 |
[対象] RunApServer、RunClient、HTMLGateway |
Base64デコード処理を使用した際、復元前のデータに改行コードが含まれていると
復元後のデータの末尾に不要な NULL文字(0x00)が付与される問題が見つかりました。
この問題に対し 正常に処理できるよう修正しました。
(※ WriteBinaryFromItem、Base64Decodeのルールを使用した場合の問題となりますが、
モジュールのパッケージがルールではなく エンジン本体のjarに含まれているため、
WedgeServerPatch.jar、RunClientPatch.jar の修正となります。)
【パッチの適用による 予測される影響範囲】
特になし
■ WedgeServerPatch 1.1.3-15 不具合修正 |
[対象] RunApServer |
Webtribeにて WedgeServerPatch 1.1.3-15を適用後、
RunDBServer.logに『データベースオブジェクト取得エラー』とエラーが
出力される問題が見つかり、これを修正しました。
【パッチの適用による 予測される影響範囲】
特になし
■ WedgeServerPatch 1.1.3-14 不具合修正 |
[対象] RunApServer |
Webtribeにて、WedgeServerPatch 1.1.3-14を適用後、
『複数のRunDBServerを使用している 且つ サーバ処理に失敗した』時に、
トランザクションが取得したコネクションプールの一部が
RunDBServerに返されない問題が見つかりました。
そのため、トランザクション処理で 何度かエラーが発生した後に、
トランザクションを実行すると コネクションプール取得待ち状態となって
画面が ハングしたような状態となる事がございます。
この不具合を修正し、複数のRunDBServerを動作させている場合も、
正常に コネクションを開放できるよう修正をしました。
【パッチの適用による 予測される影響範囲】
特になし
■ WriteBinaryFromItem、COLTEXT処理時の不具合修正 |
[対象] ビジネスルール |
WriteBinaryFromItemのビジネスルールで -binaryオプションをつけ
ルール引数に COLTEXTを設定すると、
全ファイルに in(1)の0番目のバイナリデータとして保存される問題が見つかり
これを修正しました。
【パッチの適用による 予測される影響範囲】
特になし
■ トレースログにクラス名の追加 |
[対象] RunApServer |
トレースログに クラス名が出力されるよう修正をしました。
■ ディシジョンタイプERRORのロジックの問題 |
[対象] RunApServer |
ディシジョンタイプエラーのロジックで DCか外部トランザクションを実行すると、
トランザクション自体が 正常となって処理を終了してしまう問題が見つかりました。
この問題に対して、DecisionType=Error のロジックで、DC・外部トランザクションを
実行しても、クライアントにエラーを通知するよう修正をしました。
【パッチの適用による 予測される影響範囲】
DecisionType = Errorのロジックで、DCか 外部トランザクションを使用している箇所が
ある場合は、その動作が変更される可能性がございます。
■ IME入力中のタブクリックによる不具合 |
[対象] RunClient |
IME入力中(確定前)に、タブ の切替が切替が行えたため、
タブの切替をした際に リアルタイムチェックを無視して文字列が
設定される問題が見つかりました。
この問題に対し、IME入力中は タブを変更しても切り替わらないよう
修正を致しました。
同様に IME入力中(確定前)に、フレームの×ボタンを押したときも
リアルタイムチェックを無視してデータがテキストフィールドに確定される問題が、
見つかったため、こちらも IMEを未確定の間は ×ボタンを実行できないよう
修正いたしました。
【パッチの適用による 予測される影響範囲】
IME 入力時の GUIインターフェースが、この修正の内容に変更されます。
■ 数値のリアルタイムチェック不具合について |
[対象] RunClient |
RunClientPatch.jar / ver.113-11 適用後、
数値のテキストフィールドに対し RealTimeCheckを有効としたとき、
最初の一文字目として [+][-][.]が入力できない問題が見つかりました。
この問題に対しまして、RealTimeCheckが有効となっている場合であっても、
一文字目に[+][-][.]が入力できるように修正いたしました。
([+.][-.]も入力が可能になりました。)
【パッチの適用による 予測される影響範囲】
特になし
■ 定数ファイルのエンコード指定機能追加 |
[対象] RunClient、RunApServer、HTMLGateway |
定数ファイル(RunApserverConstants.wdg, RunClientConstants.wdg, HTMLGatewayConstatns.wd)読み込み時に、
次のいずれかのシステムプロパティを参照してエンコーディングを決定するようにしました。
- webtribe.configfile.encode
- javaws.webtribe.configfile.encode
- jnlp.webtribe.configfile.encode
■ RposJoinの不具合修正 |
[対象] ビジネスルール |
RposJoinのルールにおいて、全ての結合レコードがゼロ件であった場合、
空白の一行が出力レコードに設定される問題が見つかりました。
この問題に対し、全ての結合レコードがゼロ件の場合は、
出力レコードには何も出力しないよう修正をしました。
【パッチの適用による 予測される影響範囲】
特になし
■ コネクションプールのタイムアウト発生時の問題について対応 |
[対象] RunDBServer |
JDBC コネクションが指定された時間(デフォルト15分)以上使われなかった場合に行う、
強制的にコネクションプールに返す処理と、
同一トランザクション内で同一DBに対する DC処理の開始が同じタイミングで行われた場合、
RunDBServer がハングアップする問題が見つかり、これを修正しました。
【パッチの適用による 予測される影響範囲】
特になし
■ 拡張タグ #IF ItemName.isItemExist()#の追加 |
[対象] HTMLGateway |
#IF ItemName.isItemExist()#の構文で、
[ItemName]の物理名を持つアイテムが、実際に存在するかをチェックする機能が
追加されました。
■ HTMLRegisterからの参照値を追加 |
[対象] HTMLGateway |
HTMLRegisterから、下記特殊アイテムの値を取得できるようになりました。
- #=@EXECUTION_ERROR_MESSAGE# (エラーメッセージ)
実行リストの処理中に発生したエラーの
エラーメッセージを表示します。
- #=@EXECUTION_EXCEPTION_MESSAGE# (スタックトレース)
実行リストの処理中にJavaExceptionが発生した際の
スタックトレースの内容を表示しします。
- #=@SERVER_MESSAGE# (サーバメッセージ)
トランザクション内で発生したエラーの
エラーメッセージを表示します。
- #=@DETAIL_MESSAGE# (詳細メッセージ)
トランザクション内で発生したエラーの
詳細情報を表示します。
- #=@EXCEPTION_MESSAGE# (例外メッセージ)
トランザクション内でJavaExceptionが発生した際の
Exception内のメッセージを表示します。
- #=@DB_ERROR_CODE# (DBエラーコード)
データベース処理時にエラーが発生した場合、
JDBCより返されたエラーコードを表示します。
- #=@DB_ERROR_MESSAGE# (DBエラーメッセージ)
データベース処理時にエラーが発生した場合、
JDBCより返されたエラーメッセージを表示します。
- #=@CLASS_ERROR_NAME# (エラークラス)
エラーが発生したクラス名を表示します。
■ 自動サニタイジング処理機能の追加 |
[対象] HTMLGateway |
- #=Item#
- #FORMAT Item#
- #NOFORMAT Item#
上記の拡張タグを用いて、アイテムの中身が出力された時に、
自動的にサニタイジング処理を行う機能を追加しました。
サニタイジングとは、HTML上で 変換処理が必要な項目を、
変換する処理のことを指します。
この機能を有効としますと アイテム内の下記文字がそれぞれ自動的に変換され、ブラウザに返されます。
- < → <
- > → >
- " → "
- & → &
この機能を有効にする場合は、コンフィグファイルに下記記述を追加してください。
<format input="false" output="true" auto_sanitizing="true" />
なお、この機能をONにしますと、ブラウザにタグをそのまま出力することが不可能となります。
auto_sanitizingをtrueにした状態で、タグをそのまま出力させたい場合は、
新規に作成されました拡張タグ
#NOSANITIZING Item#
を使用してください。
■ DefaultRadioButtonのBefore/After処理 |
[対象] RunClient |
DefaultRadioButtonに不要な ActionListenerが付加されていたため、
設定によっては ラジオボタン押下時の処理が正しく行われない問題が見つかり、
これを修正しました。
【パッチの適用による 予測される影響範囲】
特になし
■ 数値チェックロジックの修正 |
[対象] RunClient、HTMLGateway |
数値チェックの際に、
"+"
"-"
"."
"+."
"-."
といった文字列が数値チェック違反となりませんでしたが、
これらは明らかに数値でないため、こちらをチェック違反とするよう修正されました。
これにより、現在のWebtribe/VisualFrameの数値チェックは下記の通りとなります。
- 全てが半角数値と、"+"、"-"、"."の組み合わせである
- "+"、"-"が先頭の1文字目以外に含まれているとチェックエラー
- "."が二つ以上含まれているとチェックエラー
- "+" "-" "." "+." "-."はチェックエラー。
【パッチの適用による 予測される影響範囲】
数値型で標準チェックを行っているか 或いは 独自部品よりCheckLibrary、CheckLibraryCommonを使用しており、
尚且つ 上記5つの文字列を数値として認識させたい場合は、ロジックを修正して頂く必要がございます。
■ 文字コード指定時の標準チェック |
[対象] RunClient、HTMLGateway |
コンフィグファイル内で、<bytecheck charset="***" />の指定を行った時、
このcharset指定が 半角チェック時に有効になっていない問題が見つかり、
これを修正しました。
(半角チェック時に 文字列をバイトに変換し、そのバイト長の長さによって半角かどうかを判定しております。
このバイト変換時に使用するcharsetに、コンフィグの設定値が使用されておりませんでした。)
【パッチの適用による 予測される影響範囲】
コンフィグファイルで、<bytecheck charset="***" />を指定したとき、
チェックのロジックが変更される可能性がございます。
■ HTMLRegisterでの 余り計算 |
[対象] HTMLGateway |
HTMLRegisterにて 余りを求める計算式(%)を使用した場合、
計算結果が正しく求められない問題が見つかり、これを修正しました。
【パッチの適用による 予測される影響範囲】
HTMLRegisterにて 余り演算(%)を使用されている場合は、
この修正において 計算結果が変わることとなります。
■ テーブルAfterイベントでのSetFocusToTableCellの不具合 |
[対象] RunClient |
RunClientPatch 1.1.3-08を適用後、テーブルのAfter処理で、別の列にSetFocusToTableCellで
フォーカスを移動させた時、そこから別のコンポーネントにフォーカスを移動させると、
セルのAfterが正常に動作しない問題が見つかりました。
具体例としましては、
テーブル列1のAfterにSetFocusToTableCellを設定し、テーブル列4に移動させます。
この状態でテーブルの外にあるボタンをクリックすると、テーブル列4のAfterイベントが
正常に動作致しません。
こちらの問題に関しましては、テーブル内でSetFocusToTableCellを使用した場合も
正常にAfterイベントが動作するように修正いたしました。
【パッチの適用による 予測される影響範囲】
EventQueueを使用して、フォーカス関連の制御を行っている場合は
パッチ適用後にこれらの処理が不正となる可能性も考えられます。
ただし、動作に関しましては、1.1.3-07以前の動作の状況に戻るため、
1.1.3-07以前のパッチを使用していて 問題が無かった場合は、
こちらの修正において影響はほとんど無いかと思われます。
■ CheckDataType、CheckPostNoにパラメータを指定した際の不具合 |
[対象] ビジネスルール |
クライアントで、ビジネスルールCheckDataType、CheckPostNoを、パラメータに文字列を入力して使用すると、
チェック結果にかかわらず エラーダイアログが表示される問題が見つかりました。
また、サーバの場合は逆にチェックの結果にかかわらず、常にパラメータを無視する問題が見つかりました。
この問題に対し、クライアント・サーバ共に チェックエラーが発生したときのみ、
エラーダイアログを表示するよう修正しました。
【パッチの適用による 予測される影響範囲】
CheckDataType、CheckPostNoをパラメータ付きで使用されている場合、
影響が発生する可能性があります。
■ GUIデザイナでのSplitPane_DividerLocationを有効化 |
[対象] ToolClient |
SplitPane_DividerLocationが設定された画面のGUIデザイナを起動すると、
SplitPane_DividerLocationの設定が有効となってない問題が見つかり、
これを修正しました。
■ RTE compilerでの 部分選択での不具合 |
[対象] ToolApServer |
・SAMCが一つも定義されていない(VisualFrameの時は常に)
・ORACLE以外での稼動
の条件を満たしているとき、RTE compilerで 部分選択を押下すると、
ツリー項目が表示されない問題が見つかりました。
この問題に対し、いずれのデータベースを使用したときも、
正常にツリー項目が表示されるよう修正を行いました。
■ ログ出力クラス、スレッドセーフ対応 |
[対象] サーバ全体 |
ログ出力クラスはひとつのインスタンスを各スレッドから呼び出されますが、
日付フォーマット用クラス(SimpleDateFormat)や十進数フォーマットクラス(DecimalFormat)が
スレッドセーフでなかったため、SimpleDateFormat クラスや DecimalFormat クラスを
インスタンス変数として宣言していたところを、メソッド内で宣言するようにしました。
【パッチの適用による 予測される影響範囲】
特に無し
■ DB変換クラスの、スレッドセーフ対応 |
[対象] RunDBServer |
DB変換クラスはひとつのインスタンスを各スレッドから呼び出されますが、
日付フォーマット用クラス(SimpleDateFormat)がスレッドセーフでなかったため、
SimpleDateFormat クラスをインスタンス変数として宣言していたところを、
メソッド内で宣言するようにしました。
【パッチの適用による 予測される影響範囲】
特に無し
■ ToolDBServerのOracle10gで使用した際の不具合 |
[対象] ToolDBServer |
ToolDBServerにOracle 10gを使用し、Oracle10g用のJDBCドライバを使用すると、
LONGのカラム(フリーSQL、HTMLソース) に対して上手くアクセスできない問題が
見つかりました。
この問題に対応するため ToolDBServer に
フリーSQL、HTMLソースを Oracle の CLOB型カラムに格納するための
CLOB カラム対応ステートメントクラスを追加しました。
実際には Oracle 10g が対象となります。 今回の修正では、Oralce 10g 以外では、
フリーSQL、HTMLソースの格納に CLOB を使うことはできません。
フリーSQL、HTMLソースを CLOB カラムに格納する場合は、まずテーブル作成時に
上記データを格納するカラムを CLOB 型として作成する必要があります。
CLOB に対応したテーブル作成するための CREATE文はこちらになります。
もしすでにテーブルを作成されている場合は、作成済みのテーブルをいったん
ドロップする必要がありますので、その前に ToolClient から AllExport で
のバックアップをしてください。
次に今回追加したステートメントクラスを有効にするには、
WEB-INF/conf/ToolDBServer.wdg
を編集します。
ToolDBServer.wdg の 20行目付近に定義されている
<class statement="jp.ne.mki.wedge.tool.dbserver.controler.WedgeOracleDBStatement" />
を
<class statement="jp.ne.mki.wedge.tool.dbserver.controler.WedgeOracleClobDBStatement">
に変更して保存してください。
ToolDBServer を再起動すると、変更した設定が有効になります。
■ 拡張タグでの or 条件の判定ミス |
[対象] HTMLGateway |
HTMLRegisterで or 条件を含むIF文を記述した際、
or の比較式が正常に判断されない問題が見つかり、これを修正しました。
【パッチの適用による 予測される影響範囲】
HTMLRegisterで or 条件 を含むIF文を使用している場合は、動作が変更されます。
■ データ型を変更した際の、IME処理の不具合 |
[対象] RunClient |
データ型が JAPANESE、FULL_ALPHABET、HALF_KANAの状態のアイテムに対し、
Item#setDataType()のメソッドを使用して 上記以外のデータ型を指定しても、
IMEの切替が、 JAPANESE、FULL_ALPHABET、HALF_KANAの状態のままとなる問題が見つかりました。
例) JAPANESEのデータ型に対し、setDataTypeのメソッドを使用して CODEとしても、
そのテキストフィールドにフォーカスが移ったタイミングで日本語入力がONとなります。
この問題はRunClientPatch 1.1.3-08を適用することにより発生する問題となります。
こちらの問題を修正し、setDataType()によってIMEをOFFとすべきデータ型を設定された場合は、
以降 IMEがOFFとするよう修正しました。
(RunClientPatch 1.1.3-07以前の状態と同じになるよう修正されました。)
【パッチの適用による 予測される影響範囲】
Item#setDataType()のメソッドを任意に実行している場合は、動作が変更されます。
■ HIDE_ON_CLOSEの二度目の画面OPEN時の問題 |
[対象] RunClient |
通常 モーダルでない画面に対しshowFrame()場合は、実行リストの処理が完了した時点で 画面に表示されますが、
HIDE_ON_CLOSEの画面の場合、二度目以降は 即座に画面が表示される問題が見つかりました。
こちらの問題に関しましては二度目以降の起動時も、実行リストの終了タイミングで画面に表示されるよう
修正いたしました。
【パッチの適用による 予測される影響範囲】
特になし。
■ FormattedComponentに対するSetFocus時の全選択 |
[対象] RunClient |
FormattedTextField, FormattedComboBox にて 標準ルール SetFocus を実行すると、
全選択されない問題が見つかり、これを修正しました。
【パッチの適用による 予測される影響範囲】
特になし。
■ ToolClientの実行リストの省略不可チェック |
[対象] ToolClient |
ToolClientで Open、Close、Disposeに 実行モジュールが設定されていない空行があっても
チェックエラーとならない問題が見つかり これを修正しました
【パッチの適用による 予測される影響範囲】
特になし。
■ 特定環境での同時接続時の不具合について |
[対象] ToolApServer |
ツールを複数の端末で使用している際、サーバ側の処理で処理が衝突し
エラーが発生する問題が見つかり、この問題を修正しました。
この問題は 特定の環境(JavaVM、OS)で動作をさせた場合にのみ発生する現象となり、
ほとんどの環境では、パッチを適応しなくとも 発生しません。
【パッチの適用による 予測される影響範囲】
特になし。
■ WedgeServerPatch 1.1.3-06のPostgreSQLでの誤動作 |
[対象] ToolApServer |
WedgeServerPatch 1.1.3-06を適応することにより、リポジトリにPostgreSQLを使用している場合、
AllExport / AllImportのロジックが動作しない問題が見つかり、
これを修正しました。
【パッチの適用による 予測される影響範囲】
特になし。
■ 別ウィンドウをアクティブにした時の動作 |
[対象] RunClient |
フォーカス移動処理(SetFocusルールなど)を含む実行リスト処理中に
・同一VM以外のウィンドウをアクティブ状態にする
・同一VM内のウィンドウと、処理中の画面を交互に切り替える
のどちらかのオペレーションを行うと、不正にフォーカスが移動されてしまう問題が見つかりました。
(この問題は Webtribe/VisualFrameを用いていない JavaのGUIプログラムでも発生する問題であり、
JDK1.5で同一VM以外のウィンドウでの問題が解消されているところをみると、
JDK1.4での不具合かと思われます。)
この問題に対応するため、"同一VM以外のウィンドウをアクティブにしたとき”
の問題に関しては、このタイミングで発生するWindowEventをTRAPする事で、
対応しました。
(処理終了と同時間にて発生したWindowEventはTrapするように変更されました。)
"同一VM内のウィンドウを交互に切り替えたとき"のフォーカス移動の不正処理に関しては、
「start_clear」の項目をtrueにすることで、対応することが可能です。
「start_clear」の項目をtrueにすることにより、実行リスト開始時(但し、Before,Load,Open,disposeは除く)にて、
以下の処理が実行されます。
KeyboardFocusManager.getCurrentKeyboardFocusManager().clearGlobalFocusOwner();
上記コードにより、Swingの内部変数の値が変更されるため、副作用としての不具合をを招く可能性があります。
例えば、FocusEvent#getOppositeComponent()の値がnullになりますので、独自作成したFocusListenerににてこのメソッドを
使用している場合には、動作不良を招きます。
そのため、使用に当たっては現状の動作への影響をご確認の上お使い頂く様お願いします。
変更をする場合には、RunClient.wdgの
config/module/setting/event/focusenableのパスに
下記記述を追加して下さい。
<!--
**************************************
フォーカス移動制御 since Ver1.1.3_08
「start_clear」
実行リスト開始時に FocusOwnerをクリアする
Before,Load,Open,Disposeのときには実行されません。
デフォルトの設定は false です。
※ver1.1.3-06以前は false の動き
**************************************
-->
<focusenable start_clear="true" />
【パッチの適用による 予測される影響範囲】
フォーカスの制御が変わるため、フォーカス絡みの処理に影響を与える可能性がございます。
影響を避けたい場合は、1.1.3-06以前のバージョンの動作となるよう設定を行ってください。
(Configの設定なしの場合には、1.1.3-06以前のバージョンの動作と同等になります。)
■ 前方向のみのフォーカス移動設定 |
[対象] RunClient |
フォーカス移動順の設定で、『前のコンポーネント』のみを設定した場合、
その設定が有効とならない問題が見つかりました。
フォーカス移動順のタブで、『前のコンポーネント』のみを設定できるようになりました。
【パッチの適用による 予測される影響範囲】
特になし。
■ DefaultFormattedTextFieldの全選択設定 |
[対象] RunClient |
<focus selectall="true" /> のコンフィグ設定状態時、
DefaultFormattedTextFieldにフォーカスが入ったタイミングで 全選択されない問題が見つかり、これを修正しました。
【パッチの適用による 予測される影響範囲】
focus selectall="true"のコンフィグを指定しており、DefaultFormattedTextFieldを使用している場合、
フォーカスIn時に全選択されない 状態から 全選択される状態に 動作変更されます。
■ フォーカス取得時の全選択設定 |
[対象] RunClient |
<focus selectall="true" /> のコンフィグ設定状態時(フォーカス取得時に全選択を行う)、FormattedTextField, 編集可能な FormattedEditorComboBox
にフォーカスが入ったタイミングで 全選択されない問題が見つかり、これを修正しました。
【パッチの適用による 予測される影響範囲】
focus selectall="true"のコンフィグを指定しており、編集可能コンボボックスを使用している場合、
フォーカスIn時に全選択されない 状態から 全選択される状態に 動作変更されます。
■ IMEの種類をアイテムに保持するように修正 |
[対象] RunClient |
Itemのクラスに setCharacterSubsets(Character.Subset[] subsets)
のメソッドが追加されました。
現状までは、データ型によりIMEの種類が固定されていましたが、
このメソッドにより任意に設定が可能になりました。
ただし、データタイプの設定(setDataType)を行ったタイミングで、
デフォルトの IMEの種類 が設定されます。
任意に変更したい場合には データタイプの設定よりも後に、
setCharacterSubsets を実行してください。
■ After実行後フォーカス遷移可能コンポーネントが無い状態での不具合 |
[対象] RunClient |
テキストフィールドなどのAfterをTab,Shift+Tabにて実行後、画面内にフォーカス遷移可能コンポーネントが
無い状態になった場合、StackOverFlowのエラーが発生する不具合が見つかりました。
(テキストフィールドのAfterイベントで全コンポーネントをDisableにした場合 等)
Webtribe/VisualFrame内でデフォルトで使用しているFocusPolicyクラスを修正しました。
全てのコンポーネントをチェックし、対象のフォーカスが見つからない場合は、
遷移先アイテムとしてnullを返す形となります。
この結果、StackOverFlowは発生せず、フォーカスはフレーム自身に設定されることとなります。
【パッチの適用による 予測される影響範囲】
特になし
■ ボタン系テーブルエディタにて日本語アイテム設定時のIME制御 |
[対象] RunClient |
ボタン系テーブルエディタにて日本語アイテム設定された場合、
IMEが日本語になり、ボタンが スペースKEYなどで押下できない不具合が見つかりました。
この対応として、ボタン系テーブルエディタにてフォーカス取得時に IMEをOFF する処理が追加されました。
【パッチの適用による 予測される影響範囲】
特になし
■ Table_isEditCell=true時、IMEの設定が行われない |
[対象] RunClient |
Table_isEditCell=trueのテーブルにて、日本語項目の列にフォーカスが当たったときにIMEの設定が行われない
不具合が見つかりました。
(ただし テーブル列のbeforeに イベントが設定されている場合は、正常にIMEが設定されておりました。)
Beforeの処理有無に関わらず、BeforeのタイミングにてIMEの設定を行うように修正されました。
【パッチの適用による 予測される影響範囲】
特になし
■ DCインポート/エクスポート機能の追加 |
[対象] ToolClient、ToolApServer |
DCを単体でインポート/エクスポートできる機能を追加しました。
DC選択中は「上書きモード」となり、インポート対象のDCの物理名が同じでない場合はエラーとなります。
DC非選択で「新規作成」した状態の場合は「新規モード」となり、インポート対象のDCを
「新たにIDを振りなおして」インポートします。
■ テーブルのキー情報の欠落問題 |
[対象] ToolClient、ToolApServer |
AllImport/Export、DMCImport/Export時に「テーブルの主キー情報」が無くなってしまう問題が見つかり、
これを修正しました。
■ HAMC単体インポート |
[対象] ToolClient |
HAMCで単体インポートを実行した際、Javaスタックトレースの内容がエラーダイアログとして表示され
インポート処理を行えない問題が見つかり、これを修正しました。
■ HAMC「未使用項目を自動削除」の不具合 |
[対象] ToolClient |
HAMCで「未使用項目を自動削除」を実行した時に、Javaスタックトレースの内容がエラーダイアログとして表示され
削除処理が行えない問題が見つかり、これを修正しました。
■ ソート時の確認ダイアログの追加 |
[対象] ToolClient |
テーブルヘッダをクリックしてソートする時に、「ソートしますか?」の確認ダイアログを
表示するように修正されました。
■ SAMC、トランザクションのIOチェック |
[対象] ToolClient |
SAMCにおいて「外部トランザクション」タブの、InOutに設定された行にデータの参照が
設定されていなくてもエラーとならず、保存されてしまう問題が見つかりました。
参照が不正の場合はエラーメッセージを表示するよう修正されました。
■ HSQLDBの「DMCデータ型」の一覧でデータクラス名が表示されない |
[対象] ToolApServer |
標準のデータクラス以外の自作したデータクラスを使用している時に
「DMCデータ型」の一覧にデータクラス名が表示されない問題が見つかり、これを修正しました。
■ CharRTrim をPLSQLで呼び出した際の不具合 |
[対象] RunDBServer |
ストアドプロシージャからデータを取り出す時に、この DB変換クラスを指定しても、
右側のスペースは削除されない問題が見つかりました。
ストアドプロシージャからデータを取り出す時に、この DB変換クラスを指定されたいた場合、
右側のスペースが削除されるようになりました。
【パッチの適用による 予測される影響範囲】
DB変換クラス CharRTrim を使ってストアドプロシージャから
データを取り出している DC を実行している箇所。
■ DB変換クラスのストアドプロシージャ処理での不具合 |
[対象] RunDBServer |
DBDataConvertInterface を実装したDB変換クラスが出力項目用として、2番目以降のパラメータに指定された場合は、
誤ったパラメータ番号を使ってデータを取り出そうとします。
そのため、別のパラメータの値をストアドパラメータを取り出して返す、または「列索引が無効です。」
というエラーがログに出力されます。
DBDataConvertInterface インターフェースを実装したDB変換クラスであっても、
正しいパラメータ番号を使ってストアドプロシージャからデータを取り出すように修正されました。
【パッチの適用による 予測される影響範囲】
DBDataConvertInterface インターフェースを実装したDB変換クラスを使って
ストアドプロシージャからデータを取得するDCを実行している箇所。
標準のDB変換クラスでは、Date, Time, DateTime, Varbinary が
DBDataConvertInterface インターフェースを実装しています。
■ 整合性チェック機能 |
[対象] ToolClient |
ToolClientにて 保存を行わずに、整合性のチェックを行う機能が新しく追加されました。
■ IOチェック時のエラー箇所自動選択 |
[対象] ToolClient |
ToolClientの保存時のチェックにて、ビジネスルールのI/Oのように、親子関係がある要素の子要素でエラーが発生した場合、
エラー個所への行設定が行われておりませんでしたが、
このような場合も行の設定処理が正常に行われるよう修正されました。
■ 独自コンボボックスモデル対応 |
[対象] RunClient |
DefaultComboBox#setModel()で、コンボボックスに対し独自のモデルが追加できるようになりました。
コンボボックス モデルの設定は、ビジネスルールからのみとなります。
モデルを独自に作成することにより、名称が重複したデータ を使用した場合、最初の名称が常に選択状態になる
という現象を回避することが可能になります。
■ 実行マクロ制御の 独自クラスに置き換え |
[対象] RunClient |
RunClient.wdgから 実行マクロ制御クラスを指定できるようになりました。
変更をする場合は、RunClient.wdgの
config/module/setting/event/execution/macroのパスに
下記記述を追加して下さい。
<!--
**************************************
Executionクラス設定 since Ver1.1.3-06
**************************************
実行パラメータマクロの解析方法を独自のクラスに置き換えることが可能です。
省略時は 標準の
jp.ne.mki.wedge.pub.client.execute.DefaultExecuteParameterMacro
が使用されます。
-->
<execution>
<macro class="jp.ne.mki.wedge.pub.client.execute.DefaultExecuteParameterMacro"/>
</execution>
実行パラメータに
@{置き換える戻り値(対象の戻り値)}
のフォーマットの時のみ 実行マクロとして動作 していた所を、フォーマット変更や機能拡張が可能になります。
これにより、GOTO ラベル のような指定で 実行リストをSKIPするなどの機能拡張 などが行えるようになります。
この機能に関しましては、サンプル倉庫で、
『実行マクロ制御 GOTO制御込み』クラス提供をおこなっております。
■ 編集可能コンボボックスの使用不可状態不具合の修正 |
[対象] RunClient |
編集可能コンボボックスを使用不可にした時 (Editable=true、Enabled=falseの時)、コンボの ▼ ボタンを
クリックすると beforeイベントが動作してしまう問題が見つかりました。
使用不可状態のコンボボックスのbeforeは処理されないよう、パッチにて修正致しました。
【パッチの適用による 予測される影響範囲】
意図的に上記の不具合を利用してアプリケーションを生成していない場合は、
この問題に対する影響はございません。
■ <edit check="false">モードのコンボボックス同列クリック時の動作修正 |
[対象] RunClient |
<edit check="false">モード時に、テーブル内コンボボックスの同列をクリックすると、
1クリックにて ポップアップウィンドウが表示されない問題が見つかりこれを修正しました。
【パッチの適用による 予測される影響範囲】
<edit check="false"> でのテーブルの動作が変更されます。
check="true"の場合、もしくは RunClientPatch 1.1.3-03 適応時にコンフィグの指定を追加していない場合は
こちらの修正による影響はございません。
■ <edit combostop="true">モードのポップアップ時の動作修正 |
[対象] RunClient |
<edit combostop="true">モード時に、テーブル内コンボボックスのポップアップウィンドウを表示したまま、
他列をクリックすると、isRequestFocusError のエラーダイアログが表示される 不具合が見つかり、これを修正しました。
これは 編集確定処理(combostopの処理)が二度実行されてしまう事により、二度エディタの開放処理が発生してしまう原因によるもの
になり、二度エディタの解放処理が行われないように修正されています。
【パッチの適用による 予測される影響範囲】
<edit combostop="true"> でのテーブルの動作が変更されます。
combostop="false"の場合、もしくは RunClientPatch 1.1.3-03 適応時にコンフィグの指定を追加していない場合は
こちらの修正による影響はございません。
■ ルールからのエディタインスタンス時のコンフィグ設定 |
[対象] RunClient |
ビジネスルールから セルエディタをインスタンスした場合、RunClientPatch 1.1.3-03 で追加されたテーブルコンフィグが
反映されない問題が見つかり、これを反映させるように修正しました。
【パッチの適用による 予測される影響範囲】
ビジネスルールからエディタをインスタンスしており、
インスタンスしたエディタに対し 明示的にコンフィグの内容を設定していない場合は、
このパッチ適応後にコンフィグの設定が有効となるため、動作が変更されます。
■ SetUserObjectの記述修正 |
[対象] WedgeOMC |
WedgeOMCの ビジネスルールSetUserObjectに記述されているコメントが誤っていたため、修正しました。
■ SetTableHeaderClickListnerで ヘッダの領域外をクリックした際の エラー出力 |
[対象] ビジネスルール |
SetTableHeaderClickListnerを使用した際、ヘッダの領域外をクリックすると
標準出力に スタックトーレスが出力される問題が見つかり、これを修正しました。
ヘッダの領域外がクリックされた場合は、リスナの処理が行われなくなりました。
【パッチの適用による 予測される影響範囲】
- SetTableHeaderClickListnerを使用している個所
- SetTableHeaderClickListnerを継承した独自ルール
■ CheckByteLengthParameterの"!="を使用した比較 |
[対象] ビジネスルール |
CheckByteLengthParameterで !=による比較で、常にエラーが発生する問題が見つかり、正常にチェックをするよう修正しました。
【パッチの適用による 予測される影響範囲】
- CheckByteLengthParameterで、パラメータに != を指定している個所
- CheckByteLengthParameterを継承した独自ルール
■ DB変換クラス Realの追加 |
[対象] RunDBServer |
DB変換クラス Realが追加されました。
■ DB変換クラス Doubleの修正 |
[対象] RunDBServer |
getObject メソッドで間違って getInt を呼び出していたところを
getDouble を呼び出すように修正されました。
【パッチの適用による 予測される影響範囲】
DB変換クラス Doubleを使用した個所
■ FormattedComboBoxの不具合対応 |
[対象]RunClient |
FormattedComboBox使用時に下記問題が見つかり、これを修正しました。
- 画面起動時にコンボボックスの値を空にしていると、"Mask指定に合わない文字列が設定された為、内部データが生成できませんでした。"と標準出力に表示される。
- コンボボックスのAfterにて、BoxDataの値を変更した際に、コンボボックス入力値が変更される。
【パッチの適用による 予測される影響範囲】
以下のコンポーネント。及び以下のコンポーネントを操作するビジネスルール。
- DefaultFormattedTextField
- FormattedComboBox
- 編集可能なコンボボックス
■ DefaultTable#setSelectionRowの処理修正 |
[対象]RunClient |
テーブルでRowHeaderVisible=falseの状態で、setSelectionRowを行うと2列目 にフォーカスが設定されてしまう問題が見つかりました。
この問題に対応するため、setSelectionRowによる行の選択処理を下記のように変更しました。
1.行ヘッダがある場合
1-1.列が2つ以上ある場合 ・・・ 列は 2列目が選択
1-2.上記以外 ・・・ 列は 1列目(ヘッダ)が選択
2.行ヘッダがない場合
2-1.列が1つ以上ある場合 ・・・ 列は 1列目が選択
2-2.上記以外 ・・・ 列選択はなし
【パッチの適用による 予測される影響範囲】
コンポーネント属性 Table_isRowHeaderVisibleをfalseで設定している場合は、
そのテーブルに関して 下記内容の動作が変更されます。
- 行操作ダイアログ
- 行操作をする標準ルール
- TableSelectedRowUp
- TableSelectedRowDown
- SetSelectedIndex
- TableRowAddition
- V10xTableSelectedRowUp
- V10xTableSelectedRowDown
- V10xSetSelectedIndex
- V10xTableRowAddition
- ユーザルールにて 下記メソッドを使用している個所
- DefaultTable#setSelectionRow(int rowIndex)
- DefaultTable#editCellAt(int rowIndex, Item item)
- DefaultTable#showAddDialog()
- DefaultTable#showAddDialog(boolean isComfirmDialog)
■ SetInputValueToExecuteParam修正 |
[対象]ビジネスルール |
SetInputValueToExecuteParamのビジネスルールにおいて、入力レコードからだけではなく、
ルールパラメータから直接 ExecuteParameterを設定できるよう修正されました。
■ ExecuteAfterUntilEmptyの不具合修正 |
[対象]ビジネスルール |
ExecuteAfterUntilEmptyの InItemの値判定処理が正しく行われていない問題が見つかり、
これを修正しました。
■ ToolClientPatch 1.1.3-04での不具合修正 |
[対象]ToolClient |
ToolClientPatch 1.1.3-04適応時に、VisualFrameにおいて 実行リストの追加動作が不正になる問題が見つかり、
これを修正しました。
※ この問題はWebtribeでは発生しません。
■ SetComponentTextの修正 |
[対象]ビジネスルール |
SetComponentTextに不正なロジックがあり、標準出力に不正な文字列が出力されている問題が見つかったため、
これを修正しました。
■ DB更新件数取得の追加 |
[対象]ビジネスルール |
GetControlRecordValueのルールで、"DbUpdatedRecordCount"を指定することで、
データベースの更新件数を取得できるよう修正しました。
■ エラー時の空ダイアログ |
[対象]ビジネスルール |
下記ルールにて、エラー時に空のダイアログが表示される問題が見つかり、
これを修正しました。
- FolderChooser
- GetURLForOpen
- OpenURL
- FileTransferRule
- Base64Decode
- Base64Encode
- WriteBinaryFromItem
- WriteCsvFileFromItem
- WriteFileFromItem
■ Throwableのcatch個所を修正 |
[対象]ビジネスルール |
標準ルール内で Throwableをcatchしているため、OutOfMemoryError等の致命的なErrorが
ログに出力されない問題が見つかり、これを修正しました。
なお、対象ルールは下記のものとなります。
- SetCalendarToPanel
- PrintFrame
- SetFrameKeyLisnterExtends
- SetKeyMapToButton
- エディタ・レンダラ プロパティ変更ルール
- HTTP通信ルール
- CheckDataType
- AbstractReadXmlFromData
下記ルール三つが追加されました。
- AfterEvent実行(Inの値が設定されたら終了) / ExecuteAfterUntilEmpty
- SwitchCase構造化ルール / StructureSwitchCase
- DC に定義された SQL を取得 / GetDcSqlDef
■ テーブルコンフィグの追加 |
[対象]RunClient |
Configファイルにて以下の設定が可能になりました。
RunClient.wdg の
config/module/setting/event/table/edit のパスに記述する事により有効になります。
<table>
<!--
**************************************
テーブルエディタ設定 since Ver1.1.4
「check」にて記述する事項
true:編集開始のチェックを行う (Version1.3以前までの動き。デフォルト)
セルにフォーカスがない場合には、1回目のクリックをフォーカス移動として消化し編集開始しない
false:編集開始チェックを行わない。
1回のクリックにて編集開始になります。isEditCellの属性がある場合には使用しないでください。
この属性にする場合には combostopの属性をtrueにしてください。
「combostop」にて記述する事項
true:コンボエディタ選択時に編集を終了する
isEditCellの属性がある場合には使用しないでください。
false:コンボエディタ選択時編集を終了しない (Version1.3以前までの動き。デフォルト)
「keydispatch」にて記述する事項
true:Before処理中でもKeyイベントをエディタにdispatchする (デフォルト)
false:Before処理中のKeyEventはエディタにdispatchしない (Version1.3以前までの動き)
※Before処理ありの場合で英数字Key入力による編集開始時、1文字目が反映されません。
***************************************
-->
<edit check="false" combostop="true" keydispatch="true" />
</table>
■ 時間補正機能の追加の追加 |
[対象]RunClient |
RunClient実行中に、日付プロパティを変更する、或いは 何らかのソフトがシステム日付を変更すると
InputEventが認識されない問題が見つかり、これを補正するための機能を追加しました。
この機能を用いない場合は、RunClient.wdgの RunClient.wdg の
config/module/setting/event/difftime のパスに下記記述を追加してください。
<event>
<difftime check="false"/>
・・・
■ OutOfMemoryError時のメッセージを変更 |
[対象]RunClient |
OutOfMemoryError時のメッセージが
「VMに割り当てられたメモリ領域不足の為、処理が行えませんでした。」
となるよう 修正されました。
■ DCSQL取得メソッドの追加 |
[対象]RunApServer |
ビジネスルールからDCのSQLを取得するためのSQLが、新規に追加されました。
■ Stored Procedureでの、DBDataConvert インターフェース対応 |
[対象]RunDBServer |
Stored Procedureでの実行時、DBDataConvert インターフェースが一部正しく使用されていない
問題が見つかり、これを修正しました。
■ Double、Long、Integerの NULL対応 |
[対象]RunDBServer |
Double, Long, Integer の DB変換クラスに空文字列が渡された場合、DB に
は null をセットするように修正されました。
■ WebSphere |
[対象]WebService |
WebSphereにてWebServiceの機能を使用した場合、一部正しく動作しない問題が見つかり、
これを修正しました。
■ フレーム名、Execution名の取得 |
[対象]HTMLGateway |
稼動している フレーム名、Execution名を、 #=@FRAME#、#=@EXECUTION#で
取得できるよう修正しました。
■ Information表示にて、トレース再実行用のタグを未出力にするよう修正 |
[対象]HTMLGateway |
ブラウザ後部に出力される Information表示にて、トレースモード再実行用のタグを
未出力できるように修正されました。
<informationadd mode="hidden" tracebutton="false"/>
■ ServletPathを任意に設定できるよう修正 |
[対象]HTMLGateway |
HTMLRegisterのHTML生成処理において、#=@HTMLGATEWAY#で出力されるパスを、
コンフィグから指定できるように修正されました。
<modify servletpath="http://hostname/alias/servlet/HTMLGateway"/>
■ 定数ファイルの不正出力修正 |
[対象]HTMLGateway |
IF句や LOOP句に #CONST#を記述すると、本来出力すべき無いタイミングで
定数の内容が出力されてしまう問題が見つかり、これを修正しました。
■ OutOfMemoryErrorによる文字化け |
[対象]ToolDBServer |
フレームのサイズが巨大な場合、ToolDBServerからデータを取得するロジックで、
一部の文字が化けてしまう問題が見つかり、これを修正しました。
(OutOfMemoryErrorは発生しますが、エラーを正しく通知します。)
■ リビジョンが取得できない問題 |
[対象]ToolApServer |
リポジトリDBが、Oracle,HSqlDB の際、CAMCリビジョン番号がルールから取得できない
問題が見つかり、これを修正しました。
■ GUIデザイナ 不具合修正。 |
[対象]ToolClient |
GUIデザイナの下記機能が修正されました。
- テキストエリアのサイズを大きくした際の描画処理を修正しました。
- タブタイトルを変更した際の描画処理を修正しました。
- パネルの前景色を変えた際の描画処理を修正しました。
- タイトルパネルでのタイトル・ボーダーが表示されない問題を修正しました。
- コンボボックスのEditable=trueの際の表示イメージを変更しました。
■ GUIデザイナ。コピー、カット、ペーストの追加。 |
[対象]ToolClient |
GUIデザイナにて、コピー、カット、ペーストの機能が追加されました。
■ TableのClick/DoubleClickの仕様場所を追加 |
[対象]ToolClient |
TableのClick/DoubleClickで使用されているビジネスルールであるにもかか
わらず、「使用場所」タブに「使用場所」としてTableの情報が表示されな
い不具合があり、これを修正しました。
■ コピー機能の追加 |
[対象]ToolClient |
xAMC 各コンソールに「複写機能ボタン」を追加しました。選択された行が
複写される機能で、複写対象は下記の一覧の通りです。
コピーされた要素の名称に関しては、「コピー元+_COPIED」となります。
注意)以前 Developer'sWorks で公開されていたパッチ
「ToolClientCopyButtons.jar」を使用している場合は、そのjarを削除し、
念のため CLASSPATH からも外してください。同様の機能が今回のパッチに
て実装されています。
- CAMC に複写機能を追加(VF/Wt両方対象)
- アイテム
- アイテム自体の属性と、実行リストがコピーされます。
- 外部トランザクション(Webtribe)
- 外部トランザクション自体の属性と、In/Out がコピーされます。
- ビジネスルール
- ビジネスルール自体の属性と、In/Out がコピーされます。
- テーブル
- テーブル自体の属性と、テーブル列がコピーされます。
ただし、同じアイテムを複数のテーブル列としてエンジンで実行するとエ
ラーが発生しますので注意してください。
- グループ
- グループ自体の属性と、コンポーネントと値のセットがコピーされます。
- SAMC に複写機能を追加(Webtribe)
- データ
- データ自体の属性がコピーされます。
- 外部トランザクション
- 外部トランザクション自体の属性と、In/Out がコピーされます。
- ビジネスルール
- ビジネスルール自体の属性と、In/Out がコピーされます。
- DC
- DC自体の属性と、In/Out がコピーされます。
- トランザクション
- HAMC に複写機能を追加
- データ
- データ自体の属性がコピーされます。
- 外部トランザクション
- 外部トランザクション自体の属性と、In/Out がコピーされます。
- ビジネスルール
- ビジネスルール自体の属性と、In/Out がコピーされます。
- Execution
- Execution自体の属性と、実行リストがコピーされます。
- SMC に複写機能を追加(Webtribe)
- データ
- データ自体の属性がコピーされます。
- 外部トランザクション
- 外部トランザクション自体の属性と、In/Out がコピーされます。
- ビジネスルール
- ビジネスルール自体の属性と、In/Out がコピーされます。
- DC
- DC自体の属性と、In/Out がコピーされます。
■ RTEファイル作成時のエラー表示 |
[対象]RTEコンパイラ |
RTEファイル作成時、物理名にRTEファイルとして相応しくない文字が使われていると
作成されていないにも関わらず 正常終了で終わる問題が見つかり、これを修正しました。
■ Entity対応 |
[対象]DynamicDocument(Export) |
画面名やアイテム名に < や > などが含まれている場合、DynamicDocumentが表示できない不具合を修正しました。
(DynamicDocumentExportの場合には、出力時に XSLTエラーが発生していた不具合になります。)
■ AbstractServerDCルール対応 |
[対象]ビジネスルール テストツール |
AbstractServerDCがテストツールから実行できるよう修正しました。
■ ビジネスルール二点追加 |
[対象]ビジネスルール |
ビジネスルール「IPアドレス取得(GetIpAddress)」「JavaScript呼び出し(CallJavaScript)」を
新たに追加しました。
■ OutOfMemoryErrorのメッセージ修正 |
[対象]ビジネスルール |
java.lang.OutOfMemoryError発生時のメッセージを
"VMに割り当てられたメモリ領域不足の為、処理が行えませんでした。"
と表示されるように修正しました。
■ ReadBinaryToItemのパッチ不具合修正 |
[対象]ビジネスルール |
ProductBusinessRule1.3.1-02の修正において、ReadBinaryToItemの Base64
フォーマット処理に不具合が見つかり、これを修正しました。
■ YesNoダイアログのメッセージ引数指定 |
[対象]ビジネスルール |
ShowYesNoDialogのメッセージを入力引数で設定できるよう修正しました。
■ 動的SQLエラーの修正 |
[対象]RunApServer |
動的SQLの処理で ERRORが返った際に、そのまま処理が続行される問題が見つかり、
これを修正しました。
■ RunBatchServer起動時の エラーログメッセージ修正 |
[対象]RunBatchServer |
RunBatchServer起動処理で、定義情報ファイルが取得できなかった場合の
エラーメッセージが不正であったため、これを修正しました。
■ RunDBServer起動時 エラーログメッセージ修正 |
[対象]RunDBServer |
RunDBServer起動処理内でエラーが発生した際、RunDBServer.logに
DBパスワードが表示されないよう修正しました。
■ ExitButtonニーモニックキー割り当ての不具合 |
[対象]RunClient |
ExitButtonにニーモニックキーを割り当てると、ALTキーを押さずとも処理が
実行されてしまう問題が見つかり、これを修正しました。
■ HIDE_ON_CLOSE 画面のCANCEL処理 |
[対象]RunClient |
HIDE_ON_CLOSEの画面のOnLoad処理中に、CANCELで処理を中断すると、
再度画面を開いたタイミングで 再びOnLoad処理が動作する問題が見つかり、
これを修正しました。
■ テキストエリアの全選択処理不具合 |
[対象]RunClient |
テキストエリアにおいて、ユーザエラーの戻り値 STOP_SELECT_ALL等で
全選択フォーカス移動処理を行なった場合に、全選択されない問題が
見つかり、これを修正しました。
■ DB変換クラス Double、Integer、BigDecimal のnull対応 |
[対象]RunDBServer |
DB変換クラス 「Double」「Integer」「BigDecimal」にて、nullが指定された際に
NullPointerExceptionが発生する問題を修正しました。
■ DB変換クラスにLong(長整数) |
[対象]RunDBServer |
標準のDB変換クラスにLongが追加されました。
■ UserError設定省略可・不可 |
[対象]RunApServer |
実行リストに割り当てたモジュール(DC、ビジネスルール、外部トランザクション)が、
ステータスとして”USER_ERROR”を返した場合に「ユーザエラー」欄に何も割り当てられていない場合
異常設定として、処理を中断するか”USER_ERROR”として処理継続するかを設定できるように
なりました。
USER_ERRORとして認識させる場合は、<usererror omit="enable" /> と指定して下さい。
■ GetData複数設定チェックの追加 |
[対象]ToolClient |
DecisionTypeに GetDataが複数設定できる問題が見つかりました。
これは DecisionTableの動作に支障が生じる可能性のある設定となるため、
GetDataを二つ以上登録した場合は ツールの時点でエラーを発生するよう
修正しました。
■ 基本データフィルタ機能不具合修正 |
[対象]ToolClient |
SAMC の基本データフィルタ機能でエラーが発生する問題の修正をおこないました。
■ GuiDesigner不具合修正 |
[対象]ToolClient |
GuiDesigner で Layout/Property テーブル編集中に CAMC に戻るコマンド
を実行すると、GuiDesigner と CAMC 両方が非表示状態になってしまう。
→GuiDesigner の他のメニューコマンド同様、テーブル編集中に実行された
場合は編集をキャンセルしてメニューコマンドを実行するよう修正しました。
■ SetYYYYToJpnYYの変換処理の不具合修正 |
[対象]ビジネスルール |
各年度の 元年の一年前の年度を変換する際に、年度 0年となっていた問題を修正しました。
■ バイナリ形式でのファイル読み書き |
[対象]ビジネスルール |
WriteBinaryFileToItem、ReadBinaryFileFromItemで、
base64エンコーディングをせずに ファイルの読み書きができるようになりました。
base64エンコーディングを使用しない場合は、-binaryを指定して下さい。
■ デフォルト文字コード、改行文字の指定 |
[対象]ビジネスルール |
Constants.wdgから デフォルトの文字コード、デフォルトの改行文字が指定できるようになりました。
それぞれ 下記のKEYに対し 指定をして下さい。
- デフォルト文字コードの指定
- jp.ne.mki.wedge.rule.common.file.encoding
- デフォルト改行文字の指定
- jp.ne.mki.wedge.rule.common.file.lineseparator
なお、対象となるビジネスルールは下記の5つです。
- ReadFileToItem
- ReadCsvFileToItem
- WriteFileFromItem
- WriteCsvFileFromItem
- AddCsvFileFromItem
|
■ CSVファイル出力時の改行コードの指定 |
[対象]ビジネスルール |
WriteCsvFileFromItem、AddCsvFileFromItemにて、
-lineseparator [CR or LF or CRLF]
で 改行コードが指定できるようになりました。
■ ルール SqlInjectionCheckの追加 |
[対象]ビジネスルール |
ビジネスルール SqlInjectionCheck が追加されました。
■ CheckByteLengthParameter継承元修正 |
[対象]ビジネスルール |
CheckByteLengthParameterの継承元が SkipRuleとなっていたため、AbstractCommonに修正しました。
■ クライアントルール追加 |
[対象]ビジネスルール |
下記二つのルールが追加されました。
『フレーム名取得 / GetFrameName』
『コンボボックスの横スクロールバー設定 / SetComboHorizontalScrollBar』
■ errorFixed()メソッド修正 |
[対象]ビジネスルール |
AbstractServerで 1.1.3より追加された新メソッド errorFixed()が、誤ったデータを操作していた問題が見つかり、これを修正しました。
■ 『集約』により コンポーネント情報が無くならないよう修正 |
[対象]ToolClient |
ツールクライアントで、同じ 物理名/基本データ型/アイテムタイプで それぞれ異なるコンポーネントが割り当てられている時、
『集約』によって 下の行にあるコンポーネント情報が 無くなってしまいましたが、
『集約』によってコンポーネント情報がなくなる場合は エラーメッセージが表示されるよう修正しました。
2011/05/02 updated.