5.5.2.0 (2012/05/01) [GFX013 DB登録の格上げ] GFX013 のDB登録画面を 通常の GFアプリケーションから廃止し、 標準メニュー(\jsp\common\gamen\08_DBUPDATE)に追加します。 リソースは、03_DBSEARCH の次に設定します。 gf/jsp/GFX013 廃止 jsp\common\gamen\08_DBUPDATE 新規追加 [03_DBSEARCH DB検索の修正] SQL文に、'<' や '>' が含まれる場合の、XSSチェックの対応をします。 {@INSQL} で、value にセットしている箇所の equals タグの削除と value タグで、SQL 変数に再セットしている箇所で、BODY部分で登録する ようにし、xssCheck="false" 属性をセットします。 パラメーターへのセットでは、xssCheck="false" は効きません。 jsp\common\gamen\03_DBSEARCH\changeSQL.jsp [build.xml 修正] jdk170 において、build.xml のjavadoc でdocletを実行する際、 の箇所で、余分なソースの検索をしてしまい、実効時エラーが発生し、正常に GE12_Param.xml が作成されなくなりました。 この、** がどうも悪さをしているようで、jdk16x の時代は、表記の様に、 " で囲うことで、処理を止めることができましたが、jdk170 では効果が ありませんでした。\*\* とすると停止できますが、その値がそのままセット されるため、そのように記述できません。 そこで、DocletParam 側で、systemId パラメータが null の場合は、** を 内部的に設定するように変更します。 これは、ソースと、build.xml を一致させれば、互換性があります。 fukurou.taglet.DocletParam#start( final RootDoc root ) build.xml 上記の param name="-systemId" の 箇所をコメントアウト [TableUpdateParamTag 修正] javadoc 警告対応 @param vals String → @param keys String [javadoc] hayabusa\taglib\TableUpdateParamTag.java:439: 警告 - @param argument "vals"はパラメータ名ではありません。 [DBConfigでのproperties設定] DBConfig.xmlからDB接続時のpropertiesをセットできるようにします。 XML上でkey,value とキーと値をカンマで区切って設定します。(最初のカンマがキーと値の区切り) このプロパティはDriverManagerのgetConnectionのプロパティとしてセットされます。 例えばoracle.jdbc.ReadTimeoutをセットしたい場合はoracle.jdbc.ReadTimeout,1000 のようにセットして下さい。 fukurou.db.EDbid#addProp(final String prop) fukurou.db.EDbid#addProp(final String key, final String val) fukurou.db.EDbid#getProps() fukurou.db.DatabaseConfig#getDbidMap( final Element element , EDbid defDdbid ) fukurou.db.ConnectionFactory#createInstance() [writeTableのZIP出力時のエンコード指定] wtireTableタグでzip出力とした場合、エンコード指定が機能していませんでした。 これは、PrintWriterをByteArrayOutputStreamより作成しているためですが、 BufferedWriterを間に入れてエンコードの指定を有効にします。 Excel形式の場合の圧縮には従来通り対応していません。 fukurou.util.FileUtil#getPrintWriter( final OutputStream os,final String encode ) hayabusa.taglib.WriteTableTag#PrintWriter getPrintWriter(OutputStream os) hayabusa.taglib.WriteTableTag#PrintWriter getPrintWriter(OutputStream os) 5.5.1.9 (2012/04/19) [tableUpdateParam に別名,関数対応] 別名 を与えた検索結果に対する更新と、関数を値に設定する機能を追加します。 SELECT 文を記述したとき、別名を付けていたり、SELECTしたテーブルと別のテーブルに DBTableModelの値を書き込む場合、DBTableModel の持っているカラム名と、実際に 書き込むカラム名が異なります。そのようなケースに、元の別名カラムと、テーブルの 実カラムを指定する事で、対応します。 asNames には、select A as B from TBL の B を指定します。 orgNamesには、select A as B from TBL の A を指定します。 orgNames と、asNames の個数は、同じにしておく必要があります。 関数等を設定できる機能を追加します。 funcKeys と funcVals で、指定します。 funcKeys は、constKeys と同じ書式で、代入するカラム名をCSV形式で指定します。 funcVals に、関数を指定します。内部ロジック的には、constVals は、SQL文を構築 するときに、値をシングルクオートで囲いますが、funcVals は囲わないだけです。 hayabusa.taglib#TableUpdateParamTag#doStartTag() hayabusa.taglib#TableUpdateParamTag#release2() hayabusa.taglib#TableUpdateParamTag#setFuncKeys( final String keys ) hayabusa.taglib#TableUpdateParamTag#setFuncVals( final String vals ) hayabusa.taglib#TableUpdateParamTag#setAsNames( final String keys ) hayabusa.taglib#TableUpdateParamTag#setOrgNames( final String keys ) hayabusa.taglib#TableUpdateParamTag#makeNamesData( final String[] nms ) hybs-taglib.tld [DB定義DB出力対応] 5.5.1.6で対応した取込で、桁数未入力の場合の出力に対応及び、画面不具合修正です。 桁数未入力の場合はテーブル作成スクリプトで例えば「NUBMER(10)」の括弧を出力しません。 plugin.table.TableFilter_DBARG_OUT#makeLineList( final int[] clmNo,final String[] data,final boolean first ) plugin.table.TableFilter_TABLE#makeLineList( final String[] data,final boolean first ) gf/jsp/GF2060 5.5.1.8 (2012/04/17) [G-MIS Ver6対応] 固定値カラムの設定を行う情報を管理するクラスを追加します。 Ver6 では、PGPSET、PGPUPD が追加されています。 JSP から登録する場合は、PGPSET と PGSET が同じ値になります。 G-MISの場合、各テーブル固有の物理ユニークキーを持っていますが、 エンジン標準の様に、トリガで自動登録していません。 アプリケーション側の互換性を考慮し、トリガ化できないため、 この、DBConstValue_VV に、物理ユニークキーをセットする処理も 入れておきます。 plugin.query.DBConstValue_VV.java 5.5.1.7 (2012/04/16) [TableReader_Excel のエラー処理] EXCELを解析する途中でエラーが発生した場合、そのセルでエラーが発生したか わからないため、処理中のセル情報を取得できるように修正します。 また、CELL_TYPE_FORMULA の場合に、できる限り処理するように修正しました。 plugin.io.TableReader_Excel#readDBTable() plugin.io.TableReader_Excel$HeaderData#makeNames( final Row oRow ) plugin.io.TableReader_Excel$HeaderData#getValue( final Cell oCell ) plugin.io.TableReader_Excel$HeaderData#getLastCellMsg() [Process_GrepChangeExcel の新規追加] Process_GrepChange の入力情報として、EXCEL を読み取るProcess_GrepChangeExcel を追加します。 機能的には、outEncode 属性の削除、keywordFile のエンコードを、inEncode を 使用するように、変更、debug 属性の追加です。 fukurou.process.Process_GrepChangeExcel.java [コンパイル時の警告対応] Map配列のジェネリック定義で、警告が出ていたので、対処します。 何も定義していませんでしたが、ワイルドカードを指定して定義します。 実行時にキャストする運用は変わりません。 hayabusa.io.AbstractTableReader.java 5.5.1.6 (2012/04/16) [DB定義変更] DB定義DBの使い勝手を良くするため、一部DBの制約等を変更します。 1.GF05のUSE_LENGTHカラムのnot null制約を外す 2.GF80のUSE_LENGTHカラムのnot null制約を外す 3.GF80に論理ユニーク用カラムLUKを追加 4.GF80のインデックスカラム追加IXH 〜 IXK 及び、それに付随する画面を変更し、GFリソースの追加を行います。 gf/jsp/GF2050 gf/jsp/GF2060 gf/jsp/GF2120