JSPカスタムタグをベースとした、Webアプリケーションフレームワークです。
SQLの知識さえあれば、データのCRUD操作をメインとした業務システムが
簡単に構築することができます。
このフレームワークは、村田機械株式会社の基幹システムを構築するために
開発され、ほぼ全ての基幹システムは、これを利用して構築し、稼動しています。
(基本機能)
・ユーザー管理 ・認証・アクセス制御
・多言語対応 ・Excel入出力機能
・ガントチャート表示、編集機能 ・定型帳票作成、発行機能
・定型メール送信機能 ・データベース定義管理機能
・バッチ処理機能
各種詳細情報及びドキュメントについては、openGion@Websiteを参照して下さい。
Java を含む標章は、米国 Sun Microsystems, Inc.の商標であり、同社のJava ブランドの技術を使用した製品を指します。
Excel は、Microsoft Corporationの米国及びその他の国における登録商標です。
コンテンツ中に記載された社名および製品名は、すべて各社の商標または登録商標です。
5.7.8.0 (2014/07/04) TableFilter_LABEL見直し TableFilter_LABEL で、CLM と LBL に同じカラムを指定する事は出来なくなっていましたが 指定できるように変更します。ただし、LBLの値が変換されると、もう一度変換すると 不測の事態が発生するかもしれませんので、自己責任で対応願います。 plugin.table.TableFilter_LABEL#execute()
属性追加 caseKey,caseVal,caseNN,caseNull 属性を追加します。 5.7.7.2 (2014/06/20) で漏れたタグです。 hayabusa.taglib.WriteCheckTag#doStartTag() hayabusa.taglib.ColumnCheckTag#doStartTag() hayabusa.taglib.ColumnCheckTag#doEndTag() hybs-taglib.tld
グラフ系画面サンプル グラフ系画面サンプルを整理します。 ①個々のサンプルを充実させます。 gf/jsp/GF7201 横棒/縦棒 gf/jsp/GF7203 横棒(明細) gf/jsp/GF7204 縦棒(明細) gf/jsp/GF7202 積上棒 gf/jsp/GF7205 重なり棒 gf/jsp/GF7206 折線 gf/jsp/GF7207 ステップ gf/jsp/GF7208 範囲(Min-Max) gf/jsp/GF7209 パイ gf/jsp/GF7211 スバイダーウェブ ②Ring を メーター に変更。 gf/jsp/GF7210 メーター ③【ビュー関連】のカテゴリだったグラフ関連の画面を【グラフ画面】 カテゴリに移動します。 gf/jsp/GF6090 棒グラフ gf/jsp/GF6110 集計グラフ gf/jsp/GF6120 JfreeChart gf/jsp/GF6130 左右分割スクロール
MeterPlot,Thermometer,Compass の機能追加 属性設定ができるように、各種パラメータを指定します。 今まで、ChartPlot_Pie で、作成していましたが、パラメータのやり取りがある為、 ChartDataset に、作成メソッドを移します。 hayabusa.io.ChartDataset#makeMeterPlot() hayabusa.io.ChartDataset#makeThermometerPlot() hayabusa.io.ChartDataset#makeCompassPlot() hayabusa.io.ChartPlot_Pie#getPlot( final ChartCreate create )
MeterPlot,CompassチャートのNeedleタイプを指定します。 taglib上では、規定のchratType に、_PIE などと指定します。 hayabusa.io.ChartDataset#setNeedleType( final String type ) hayabusa.taglib.ChartDatasetTag#setChartType( final String chartType )
色指定 色指定で、透明色(TRANSPARENT)を指定できるようにします。 これは、背景色に透明を指定したい場合に使います。 fukurou.util.StringUtil#CLR_MAP
entryタグ actionExec の引数を columnId ではなく、DBColumnオブジェクト に変更します。 これは、従来、columnId から、「リソースの」DBColumnオブジェクトを作成して、 各種 DBTYPEのオブジェクトを使用して、値の変換を行っていました。 この修正は、「DBTableModelの」DBColumnオブジェクトを使用して処理する様に 変更します。 何が異なるかというと、columnEditor 等で dbType を置き換えた場合に、 置き換えた DBColumnオブジェクトを使用するようになります。 hayabusa.taglib.EntryTag#setColumnValues( final String[] val ) hayabusa.taglib.EntryTag#actionExec( final String action,final DBColumn dbColumn,final String oldValue,final String newValue ) Edit機能改善(続き) 5.7.7.3でエラーメッセージを出すようにしましたが、エラーメッセージ中のカラム名をラベルリソースから取るようにします。 hayabusa.taglib.ViewFormTag#makeEditTable( final DBEditConfig config)
5.7.7.3 (2014/06/27) edit機能改造 edit機能利用時、画面修正が入った場合に設定済みのカラム名とテーブルモデルのカラム名が 異なる場合が出ます。その場合にEdit機能が自動的に利用されない状態になっていましたが、 ユーザにとって分かりずらいため、警告的にメッセージを表示します。 表示メッセージは**リソースのMSG0085です。 hayabusa.taglib.ViewFormTag#makeEditTable( final DBEditConfig config) **リソースMSG0085追加
画面リソース登録画面修正 画面リソースはロール違いを登録可能ですが、画面リソース削除時のラベルリソース同時削除では 他に生きている画面リソースが存在しているかどうかを見ていませんでした。 同一システムID、同一画面ID、状態フラグが0or1で自身以外に存在している場合に ラベルリソースを削除しないようにします。 ge/jsp/GE0002/entry.jsp
5.7.7.2 (2014/06/20) getDBName見直し DBID違いのコネクションに、初めて接続する場合に、データベース名を 取得する処理(ConnectionFactory#getDBName)で、pool が存在しない場合に エラーになる箇所を修正します。 ダミーで、コネクトしてから、もう一度取得するように修正します。 fukurou.db.ConnectionFactory#getDBName( final String dbid )
enum DBFunctionName で、getFunctionName 処理内で、DBF.NAME の時だけ 簡素化して処理します。 fukurou.db.DBFunctionName#getFunctionName( final String func ,final String dbid )
DB定義DB GF03 の追加に伴う対応。 ①GF2150 (XML出力(定義情報))に、GF03 の抜出項目を追加 ②build.xml に、GF03 の抜出項目パラメータを追加 gf/jsp/GF2150/query.jsp gf/jsp/GF2150/result.jsp gf/build.xml
gf/db/ 以下のファイルは、コメントを削除した状態での MD5 比較で差分だけ登録します。 変更分は、多々あるため、個々にファイル名は、記述しません。
属性追加 caseKey,caseVal,caseNN,caseNull 属性を追加します。 これは、パラメータを使用して、そのタグを使用するかどうかを判定することができます。 equals タグで、囲うより、簡素化できます。 hayabusa.taglib.ColumnSetTag#doStartTag() hayabusa.taglib.FieldsetTag#doStartTag() 、doEndTag() hayabusa.taglib.FileTag#doStartTag() 、doEndTag() hayabusa.taglib.FrameTag.java JavaDocと、tld のみ変更 hayabusa.taglib.ImageTag.java JavaDocと、tld のみ変更 hayabusa.taglib.ReadTableTag#doEndTag() hayabusa.taglib.TableFilterTag#doStartTag() 、doEndTag() hayabusa.taglib.URLConnectTag#doStartTag() 、doEndTag() hayabusa.taglib.WriteTableTag#doStartTag() 、doEndTag() hybs-taglib.tld
gf/jsp/GF2180/query.jsp
5.7.7.1 (2014/06/13) GE関連見直し maxRowCount="10000" のように、大きな値を入れている箇所では、 無制限を示す、maxRowCount="0" を設定します。 ge/jsp/GE0009/query.jsp(39): <og:queryButton maxRowCount="10000" /> ge/jsp/GE0010/query.jsp(46): <og:queryButton maxRowCount="10000"/> ge/jsp/GE0020/query.jsp(46): <og:queryButton pageSize="10000" maxRowCount="10000" >
GE関連見直し 各query.jsp画面のinclude releaseNotes.jsp を見直します。 内容的には、DBIDを使用して他のデータベースと差分、比較する機能を持つ リソース関連画面は、dbid_sabun.jsp をincludeするように分離します。 逆に、今まで、レポート関連の画面では、これらの拡張機能は使っていないため、 releaseNotes.jsp のみのinclude となります。 これに伴い、releaseNotes.jsp と dbid_sabun.jsp の2つをinclude する画面では、 hideMenu タグが、2重に表示されるため、各include画面ではなく、query.jsp側に hideMenu タグを記述するように変更します。 gf/jsp/common/releaseNotes.jsp gf/jsp/common/dbid_sabun.jsp
ge/jsp/REP03/query.jsp(43): <jsp:directive.include file="/jsp/common/releaseNotes.jsp" /> ge/jsp/REP04/query.jsp(44): <jsp:directive.include file="/jsp/common/releaseNotes.jsp" /> ge/jsp/REP05/query.jsp(48): <jsp:directive.include file="/jsp/common/releaseNotes.jsp" /> ge/jsp/REP06/query.jsp(38): <jsp:directive.include file="/jsp/common/releaseNotes.jsp" /> ge/jsp/REP11/query.jsp(51): <jsp:directive.include file="/jsp/common/releaseNotes.jsp" /> ge/jsp/REP14/query.jsp(51): <jsp:directive.include file="/jsp/common/releaseNotes.jsp" />
関連する箇所で、queryButtonタグで、table で囲っている場合は、td="no" を付けて テーブルで囲うのを止めました。これは、先の修正でも行っています。 ge/jsp/GE0001/query.jsp(36): <og:queryButton> ge/jsp/GE0002/query.jsp(70): <jsp:directive.include file="/jsp/common/releaseNotes.jsp" /> ge/jsp/GE0003/query.jsp(63): <jsp:directive.include file="/jsp/common/releaseNotes.jsp" /> ge/jsp/GE0004/query.jsp(51): <jsp:directive.include file="/jsp/common/releaseNotes.jsp" /> ge/jsp/GE0005/query.jsp(48): <jsp:directive.include file="/jsp/common/releaseNotes.jsp" /> ge/jsp/GE0007/query.jsp(42): <og:queryButton> ge/jsp/GE0016/query.jsp(35): <og:queryButton> ge/jsp/GE0017/query.jsp(45): <og:queryButton> ge/jsp/GE0018/query.jsp(38): <og:queryButton> ge/jsp/GE0019/query.jsp(45): <og:queryButton> ge/jsp/REP01/query.jsp(43): <og:queryButton> ge/jsp/REP07/query.jsp(30): <og:queryButton> ge/jsp/TRANS01/query.jsp(37): <og:queryButton>
コメント他 VERSION と、serialVersionUID の修正漏れ hayabusa.taglib.EditConfigTag.java hayabusa.taglib.GanttHeaderTag.java hayabusa.taglib.ViewFormTag.java
コメントの {@COM_CLMS} を、{@COM_CLMS} に修正 plugin.table.TableFilter_KBCLM.java
コメントのDIRのサンプルソース部の修正 実際に出力しているフォルダと同じにしておきます。 plugin.table.TableFilter_CMNT_CLM.java plugin.table.TableFilter_CMNT_TBL.java plugin.table.TableFilter_DBARG_OUT.java plugin.table.TableFilter_DBSRC_OUT.java plugin.table.TableFilter_INDEX.java plugin.table.TableFilter_SEQUENCE.java plugin.table.TableFilter_TABLE.java
Editor_YMDMENU バグ修正 SelectionFactory 対応時に、引数に、clm.getEditorParam() を使うべきところ、 clm.getCodeData() を使っていた為、エラーになっていました。 plugin.column.Editor_YMDMENU#Editor_YMDMENU( final DBColumn clm )
Selection_NULL を、Selectionオブジェクトの基本実装とします。 今まで、Selection 関連クラスは、メソッド数が少ないこともあり、 implements Selection としてきました。今回、Selection_NULL を、 AbstractSelection クラス的な位置づけに見直します。 Default というほどの規模でもなく、Abstract にすると、実態を返せないため、 少しクラス名としては、おかしくなりますが、このまま使います。 これに伴い、各クラスは、extend Selection_NULL することになります。 hayabusa.db.Selection_CODE.java hayabusa.db.Selection_DB.java hayabusa.db.Selection_DBRADIO.java hayabusa.db.Selection_HM.java hayabusa.db.Selection_KEYVAL.java hayabusa.db.Selection_NULL.java hayabusa.db.Selection_NUM.java hayabusa.db.Selection_RADIO.java hayabusa.db.Selection_YMD.java
XXXMENU の editor は、警告を出さないようにします。 YMDMENU,HMMENU,NUMMENU は、プログラム上で、継承元の親クラス(Editor_MENU) を super(clm) で呼び出しており、その時に、Selection が作成されていないため、 警告が出ます。super を呼び出す作りがまずいのですが、とりあえず、警告を出している 箇所で、出さない様にだけしておきます。抜本対策は、別途検討。 hayabusa.db.DBColumn#getSelection()
codeName 設定時に、renderer,editor が null の場合のみ、MENUに設定 hayabusa.taglib.ColumnTag#getInsertTag( final DBColumn clm, final String value ) gf/jsp/GF6010/query.jsp
ファイル比較修正 ukurou\process の Process_FileSearch.java を使用したファイルの比較処理で、 useOmitCmnt="true" で、かつ、useMD5="true" の場合、コメント除去したファイルを 作成し、その MD5 を取得するようにします。 これは、DB定義書のXMLファイルなど、データ変動がなくても、毎回新規作成するファイルで、 かつ、コメント欄に、作成日付等を入れる場合の同一チェックに使います。 修正箇所は、Process_FileSearch.java ではなく、FileLineModel.java 側です。 fukurou.process.FileLineModel#setFileVals( final int level, final File file ) fukurou.process.FileLineModel#getLineCnt( final File file,final File ocFile )
CommentLineParser.java で、単独でテストするための main 処理で、 コメント除去したファイルを出力するように修正します。(単なる実装漏れ) fukurou.util.CommentLineParser#main( final String[] args )
修正 互換モードとネイティブモードの切り替えで、datalist の id と、columnタグの listの値を、修正しました。(まだ、完全に対応できていません。) gf/jsp/common/gamen/06_INSTALL/query.jsp
検索中表示 query.jsp で、検索ボタンを押した時に、「検索中」表示を行います。 これは、jquery の jquery.blockUI.js を使用した機能です。 gf/src/script/common/jquery/jquery.blockUI.js gf/src/script/common/jquery/blockUI.js gf/jsp/common/jquery/jquery.blockUI.js ( http://malsup.github.io/jquery.blockUI.js ) gf/jsp/common/jquery/blockUI.js
hayabusa.taglib.HeadTag#doEndTag() hayabusa.taglib.HeadTag#JQUERY_BLOCKUI_JS hayabusa.taglib.HeadTag#CUSTOM_BLOCKUI_JS hayabusa.common.SystemData#VIEW_USE_BLOCKUI
修正 ポップアップの日本語部分の、エンコード修正 ⇒,→,←,×,▲,△,▽,▼ の記号を、"\u21d2" としていたのを、"⇒" に変更 ge/jsp/custom/multiChoose.jsp gf/jsp/custom/multiChoose.jsp
修正 target name="xml" において、GF2150の定義情報抜出は個別指定方式に変更されたため、引数の修正。 また、db/common/xml/update 以下に出力していたファイルを、テーブル毎に、フォルダを分けます。 update GF01,GF02,GF05,GF07,GF09,GF81 sample GF41,GF42,GF43,GF44,GF45,GF46,GF19,GF60,GF61,GF62,GF63,GF64,GF65,GF66,GF67,GF68,GF69 taglib GF21,GF22,GF23,GF24,GF25 BONUS,DEPT,EMP は、一時的に、抜出から除外しておきます。(データ不備の為) gf/build.xml
データ抜出の画面修正 gf/jsp/GF2170 gf/jsp/GF6010 gf/jsp/GF7110