クラス FileUDTag

  • すべての実装されたインタフェース:
    java.io.Serializable, BodyTag, IterationTag, JspTag, Tag, TryCatchFinally

    public class FileUDTag
    extends CommonTagSupport
    ファイルアップロード/ダウンロードリンクを作成するタグです(通常は result_info.jsp に組込み)。 画面検索した結果を、ダウンロードしたり、アップロードする機能は、画面リソースの ロール制御で管理しています。 ただし、デフォルトで、以下の制限が掛かっています。 ファイルダウンロード ・command="NEW|RENEW|FIRST|LAST|PREV|NEXT|VIEW|RESET" のみ ファイルアップロード ・command="COPY|INSERT" のみ 5.7.8.1 (2014/07/18) addDownCmnd と、addUpldCmnd を指定すれば、ダウンロード、アップロードできる command を増やすことが可能です。 また、typeDownload="true" にするとDownload 処理を行う為の前処理を実施します。 Download 処理を行うには、指定の画面(呼び出し元)と、抜き出した時の DBTableModel がマッチしているか判定します。 また、DBTableModel が存在しない、または、不備な場合(オーバーフロー)は、 最終SQLを実行する必要があり、そもそも、抜出処理が出来ない状態では、 エラーを返す必要があります。 それら、一連のDownload 処理を行うかどうかを指定します。 true の場合、session の HybsSystem.DB_LAST_SQL_KEY に格納された DBLastSql オブジェクトを取得し、scope が request または、overflow が true の場合に、BODY部を実行します。(通常、queryタグを記述します。) query の出力先は、scope を request にします。 それ以外は、tableId から取り出した DBTableModel を、scope = "request" に(アドレスのみ)コピーします。 writeTable タグでは、scope = "request" から、DBTableModel を取り出します。
    関連項目:
    直列化された形式
    機能分類
    ファイルアップロード/ダウンロード
    形式サンプル:
    ●形式:一般ユーザーが直接組み込むことはありません。 ●body:あり(EVAL_BODY_BUFFERED:BODYを評価し、{@XXXX} を解析します) ●Tag定義: <og:fileUD command 【TAG】command を指定します downloadImg 【TAG】ダウンロード時のアイコンを指定します(初期値:"{@SYS.JSP}/image/fileDownload.gif") downloadJsp 【TAG】ダウンロード時の呼び出しJSPを指定します(初期値:"{@SYS.JSP}/common/fileDownload.jsp") uploadImg 【TAG】アップロード時のアイコンを指定します(初期値:"{@SYS.JSP}/image/fileUpload.gif") uploadJsp 【TAG】アップロード時の呼び出しJSPを指定します(初期値:"{@SYS.JSP}/common/fileUpload.jsp") imgWidth 【TAG】アイコン幅サイズ(px)を指定します(初期値:20px) imgHeight 【TAG】アイコン高さサイズ(px)を指定します(初期値:20px) filename 【TAG】ダウンロード時ファイル名を指定します(初期値:"{@GUI.LABEL}") 6.8.1.4 (2017/08/25) 拡張子はつけません。 addDownCmnd 【TAG】ダウンロード時のコマンドを追加指定できます(初期値:null) addUpldCmnd 【TAG】アップロード時のコマンドを追加指定できます(初期値:null) roles 【TAG】ロールズをセットします target 【TAG】ダウンロード文書を表示させるフレーム、またはウィンドウの名前を指定します errorMsg 【TAG】ダウンロード出来ない場合のエラーメッセージIDを指定します(初期値:ERR0028) typeDownload 【TAG】Download 処理を行うかどうかを指定します(初期値:false) useEditLink 【TAG】編集リンク自体を出すかどうかどうか(初期値:true) editImg 【TAG】編集アイコンを指定します(初期値:"{@SYS.JSP}/image/edit.png") clmEdit 【TAG】編集時にカラム編集タブを表示するかどうか(初期値:true) debug 【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false) > ... Body ... </og:fileUD> ●使用例 <og:fileUD command="{@command}" /> <og:fileUD command = command設定 (ダウンロード="NEW|RENEW|FIRST|LAST|PREV|NEXT|VIEW" 、 アップロード="COPY|INSERT") [ downloadImg ] = "{@SYS.JSP}/image/fileDownload.gif" ダウンロード時のアイコン [ downloadJsp ] = "{@SYS.JSP}/common/fileDownload.jsp" ダウンロード時の呼び出しJSP [ uploadImg ] = "{@SYS.JSP}/image/fileUpload.gif" アップロード時のアイコン [ uploadJsp ] = "{@SYS.JSP}/common/filePopup.jsp" アップロード時の呼び出しJSP [ imgWidth ] = "20px" アイコン幅サイズ(px) [ imgHeight ] = "20px" アイコン高さサイズ(px) [ filename ] = "{@GUI.LABEL}.xls" ダウンロード時ファイル名 [ roles ] = "GE|DOC" アクセスロールズ [ target ] = "_blank" ダウンロードファイルを開くターゲット [ errorMsg ] = "ERR0042" エラーメッセージID [ typeDownload] = "false/true" Download 処理を行うかどうか(初期値:false) />
    変更履歴:
    4.3.0.0 (2008/07/04) 新規追加, 5.7.4.1 (2014/03/15) エラーメッセージ変更, 5.9.32.1 (2018/05/08) URLチェック対応
    バージョン
    4.0
    作成者
    Kazuhiko Hasegawa
    導入されたバージョン:
    JDK5.0,
    • コンストラクタの詳細

      • FileUDTag

        public FileUDTag()
        デフォルトコンストラクター
        変更履歴:
        6.4.2.0 (2016/01/29) PMD refactoring. Each class should declare at least one constructor.
    • メソッドの詳細

      • doStartTag

        public int doStartTag()
        Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。
        定義:
        doStartTag インタフェース内 Tag
        オーバーライド:
        doStartTag クラス内 CommonTagSupport
        戻り値:
        後続処理の指示(SKIP_BODY)
        変更履歴:
        5.1.6.0 (2010/05/01) 画面項目並べ替え対応, 6.2.0.1 (2015/03/06) 画面IDのキーを"GAMENID" に統一します。
      • doEndTag

        public int doEndTag()
        Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
        定義:
        doEndTag インタフェース内 Tag
        オーバーライド:
        doEndTag クラス内 CommonTagSupport
        戻り値:
        後続処理の指示
        変更履歴:
        4.3.0.1 (2008/08/11) callBack パラメータの設定漏れ修正、引数から見直し, 5.1.6.0 (2010/05/01) 帳票画面定義機能対応, 5.1.7.0 (2010/06/01) 進む・戻るボタンでもExcel出力ボタンを出す, 5.3.6.0 (2011/06/01) Edit機能見直し, 5.3.7.0 (2011/07/01) Excel取込で画面IDとアドレスが異なる場合にエラーとなるバグを修正, 5.3.7.0 (2011/07/01) 編集画面をリサイズできるように対応します。, 5.3.7.0 (2011/07/01) PL/SQLを利用した検索でファイルダウンロードが出来るように対応します。, 5.4.2.0 (2011/12/01) 画面リソースで画面編集機能のON/OFFを設定できるようにする。, 5.5.2.4 (2012/05/16) nullに対する冗長な比較, 5.5.5.2 (2012/08/20) 画面リソースのoモード対応, 5.5.6.2 (2012/09/24) makeTagのtarget対応, 5.6.0.2 (2013/01/19) editモードのisEditコントロール対応, 5.7.5.0 (2014/04/04) 編集リンク自体を出すかどうかどうか(初期値:true), 5.7.8.1 (2014/07/18) command="RESET" 時に、ダウンロードリンクを表示, 5.7.8.1 (2014/07/18) addDownCmnd , addUpldCmndを追加, 6.2.0.1 (2015/03/06) 画面IDのキーを"GAMENID" に統一します。, 6.2.2.0 (2015/03/27) ファイルの拡張子を、".xls" から、システムリソースの TABLE_WRITER_EXCEL_TYPE に変更, 6.3.1.0 (2015/06/28) 4:個人設定可のリソースの取得方法に修正(バグFix)。TABLE_WRITER_EXCEL_TYPE, 6.3.4.0 (2015/08/01) 14_EDIT の指定で、フォルダではなく、index.jspまで指定します。, 6.4.4.1 (2016/03/18) StringBuilderの代わりに、OgBuilderを使用する。, 6.8.1.3 (2017/08/04) 日本語のeditNameが、ネイティブモードでHTTP400 エラーになる。・・・ 5.10.0.2 (2018/06/22), 6.8.1.4 (2017/08/25) filename に、拡張子はつけません。, 5.9.32.1 (2018/05/11) makeTagに、URLチェック対応のための引数を追加
      • release2

        protected void release2()
        タグリブオブジェクトをリリースします。 キャッシュされて再利用されるので、フィールドの初期設定を行います。
        オーバーライド:
        release2 クラス内 CommonTagSupport
        変更履歴:
        5.7.4.1 (2014/03/15) エラーメッセージ変更, 5.7.5.0 (2014/04/04) useEditLink 追加, 5.7.8.1 (2014/07/18) addDownCmnd,addUpldCmnd 追加, 5.9.32.1 (2018/05/08) URLチェック対応
      • setCommand

        public void setCommand​(java.lang.String cmd)
        【TAG】command を指定します。
        パラメータ:
        cmd - コマンド [NEW/RENEW/FIRST/LAST/PREV/NEXT/VIEW/RESET/COPY/INSERT]
        関連項目:
        setAddDownCmnd( String ), setAddUpldCmnd( String ), setCommand( String )
        説明:
        command を指定します。 ダウンロードは、"NEW|RENEW|FIRST|LAST|PREV|NEXT|VIEW|RESET" のみ有効です。 アップロードは、"COPY|INSERT" のみ有効です。 それ以外のコマンドでは、アイコンは表示されません。 例えば、NEXT/PREV など。
      • setDownloadImg

        public void setDownloadImg​(java.lang.String img)
        【TAG】ダウンロード時のアイコンを指定します(初期値:"{@SYS.JSP}/image/fileDownload.gif")。
        パラメータ:
        img - ダウンロード時のアイコン
        説明:
        ダウンロード時に表示されるアイコンを指定します。 初期値:"{@SYS.JSP}/image/fileDownload.gif" です。
      • setDownloadJsp

        public void setDownloadJsp​(java.lang.String file)
        【TAG】ダウンロード時の呼び出しJSPを指定します(初期値:"{@SYS.JSP}/common/fileDownload.jsp")。
        パラメータ:
        file - ダウンロード時の呼び出しJSP
        説明:
        ダウンロード時に呼び出されるJSPファイル名を指定します。 初期値:"{@SYS.JSP}/common/fileDownload.jsp" です。
      • setUploadImg

        public void setUploadImg​(java.lang.String img)
        【TAG】アップロード時のアイコンを指定します(初期値:"{@SYS.JSP}/image/fileUpload.gif")。
        パラメータ:
        img - アップロード時のアイコン
        説明:
        アップロード時に表示されるアイコンを指定します。 初期値:"{@SYS.JSP}/image/fileUpload.gif" です。
      • setUploadJsp

        public void setUploadJsp​(java.lang.String file)
        【TAG】アップロード時の呼び出しJSPを指定します(初期値:"{@SYS.JSP}/common/fileUpload.jsp")。
        パラメータ:
        file - アップロード時の呼び出しJSP
        説明:
        アップロード時に呼び出されるJSPファイル名を指定します。 初期値:"{@SYS.JSP}/common/fileUpload.jsp" です。
      • setImgWidth

        public void setImgWidth​(java.lang.String width)
        【TAG】アイコン幅サイズ(px)を指定します(初期値:20px)。
        パラメータ:
        width - アイコン幅サイズ(px)
        説明:
        アップロード/ダウンロードのアイコンを表示する際の幅サイズ(px)を指定します。 ファイルサイズは、アップロード/ダウンロード共通です。 初期値は、20px です。
      • setImgHeight

        public void setImgHeight​(java.lang.String height)
        【TAG】アイコン高さサイズ(px)を指定します(初期値:20px)。
        パラメータ:
        height - アイコン高さサイズ(px)
        説明:
        アップロード/ダウンロードのアイコンを表示する際の高さサイズ(px)を指定します。 ファイルサイズは、アップロード/ダウンロード共通です。 初期値は、20px です。
      • setFilename

        public void setFilename​(java.lang.String file)
        【TAG】ダウンロード時ファイル名を指定します(初期値:"{@GUI.LABEL}")。
        パラメータ:
        file - ダウンロード時ファイル名 ("{@GUI.LABEL}")
        説明:
        ダウンロード時のファイル名を指定します 通常は、画面のラベル(言語対応)で、拡張子は付けません。ファイルの種類に応じて、拡張子を自動設定します。
        変更履歴:
        6.8.1.4 (2017/08/25) 拡張子はつけません。
      • setRoles

        public void setRoles​(java.lang.String rls)
        【TAG】ロールズをセットします。
        パラメータ:
        rls - パラメータ
        説明:
        ここで指定したロールを元に、ユーザー毎のアクセス許可がチェックされます。 アクセス許可されないと、表示されません。 このロールを指定しない場合は、画面のロールが使用されます。
      • setTarget

        public void setTarget​(java.lang.String name)
        【TAG】ダウンロード文書を表示させるフレーム、またはウィンドウの名前を指定します。
        パラメータ:
        name - ダウンロード文書のフレーム名(ターゲット属性)
        説明:
        フレーム名(ターゲット属性)を設定します。
      • setTypeDownload

        public void setTypeDownload​(java.lang.String type)
        【TAG】Download 処理を行うかどうか[true:実行する/false:リンク作成]を指定します(初期値:false)。
        パラメータ:
        type - Download処理 [true:実行する/false:リンク作成]
        説明:
        Download 処理を行うには、指定の画面(呼び出し元)と、抜き出した時の DBTableModel がマッチしているか判定します。 また、DBTableModel が存在しない、または、不備な場合(オーバーフロー)は、 最終SQLを実行する必要があり、そもそも、抜出処理が出来ない状態では、 エラーを返す必要があります。 それら、一連のDownload 処理を行うかどうかを指定します。 true の場合、session の HybsSystem.DB_LAST_SQL_KEY に格納された DBLastSql オブジェクトを取得し、scope が request または、overflow が true の場合に、BODY部を実行します。(通常、queryタグを記述します。) query の出力先は、scope を request にします。 それ以外は、tableId から取り出した DBTableModel を、scope = "request" に(アドレスのみ)コピーします。 writeTable タグでは、scope="request" から、DBTableModel を取り出します。 初期値は、false(抜き出しでは無くリンク作成) です。
      • setErrorMsg

        public void setErrorMsg​(java.lang.String msg)
        【TAG】ダウンロード出来ない場合のエラーメッセージIDを指定します(初期値:ERR0042)。
        パラメータ:
        msg - ダウンロード文書のフレーム名(ターゲット属性)
        説明:
        DBTableModel が、最後に作成された画面と、メモリ中の DBLastSql オブジェクトが 管理している情報が異なる場合は、ダウンロード出来ません。 同様に、DBLastSql オブジェクト 自身が作成されていない場合も出来ません。 そのようなケースに表示するエラーメッセージのメッセージIDを指定します。 引数は、指定できません。 初期値は、『ERR0042:出力対象データが見つかりませんでした。再度検索して下さい。』 です。
      • setEditImg

        public void setEditImg​(java.lang.String img)
        【TAG】編集アイコンを指定します(初期値:"{@SYS.JSP}/image/edit.png")。
        パラメータ:
        img - アップロード時のアイコン
        説明:
        編集アイコンを指定します。 初期値:"{@SYS.JSP}/image/edit.png" です。
        変更履歴:
        5.1.6.0 (2010/05/01) 新規追加
      • setClmEdit

        public void setClmEdit​(java.lang.String type)
        【TAG】Edit画面でカラム編集タブを出すかどうか[true:出す/false:出さない]設定します(初期値:true:出す)。
        パラメータ:
        type - 編集タブ出力 [true:出す/false:出さない]
        説明:
        falseを指定するとカラム編集タブを出さない。
      • setUseEditLink

        public void setUseEditLink​(java.lang.String flag)
        【TAG】Edit画面でカラム編集リンクを出力するかどうか[true:する/false:しない]設定します(初期値:true:する)。
        パラメータ:
        flag - リンク出力 [true:する/false:しない]
        関連項目:
        QueryButtonTag.setUseEditMenu(String)
        説明:
        falseを指定するとカラム編集リンクを出さない。 従来は、カラム編集画面の内、【表示項目設定】タブを表示しないだけでした。 この設定は、RWMODE を、 ##d , ##u , ##f の場合にも同様の設定が可能です。 カラム編集リンク自体を出さない機能は、現時点ではリソース設定できないため、 タグのパラメータとして指定できるようにします。 基本的には、このパラメータはほとんど使われていないハズなので、 機能を置き換えます。 初期値は、カラム編集リンクを出力する(=true)です。
        変更履歴:
        5.7.5.0 (2014/04/04) 新規追加
      • setAddDownCmnd

        public void setAddDownCmnd​(java.lang.String cmd)
        【TAG】ダウンロード時のコマンドを追加指定できます(初期値:null)。
        パラメータ:
        cmd - 追加するコマンド
        関連項目:
        setCommand( String )
        説明:
        ダウンロードリンクが表示される command は、 "NEW|RENEW|FIRST|LAST|PREV|NEXT|VIEW|RESET" のみです。 これ以外の command で、ダウンロードリンクを表示させたい場合は、 この、addDownCmnd に、記述します。 初期値は、null(追加コマンドはない)です。
        変更履歴:
        5.7.8.1 (2014/07/18) 新規追加
      • setAddUpldCmnd

        public void setAddUpldCmnd​(java.lang.String cmd)
        【TAG】アップロード時のコマンドを追加指定できます(初期値:null)。
        パラメータ:
        cmd - 追加するコマンド
        関連項目:
        setCommand( String )
        説明:
        アップロードリンクが表示される command は、"COPY|INSERT" のみです。 これ以外の command で、アップロードリンクを表示させたい場合は、 この、addUpldCmnd に、記述します。 初期値は、null(追加コマンドはない)です。
        変更履歴:
        5.7.8.1 (2014/07/18) 新規追加
      • setUseURLCheck

        public void setUseURLCheck​(java.lang.String flag)
        【TAG】リンクアドレスにURLチェック用の確認キーを付加するかどうか[true/false]を指定します。
        パラメータ:
        flag - 暗号化するかかどうか [true:暗号化する/false:しない]
        関連項目:
        URLCheckFilter
        説明:
        この属性は、URLCheckFilter(org.opengion.hayabusa.filter.URLCheckFilter)と合わせて使用します。 trueが指定された場合、リンクURLのパラメーターに、URL確認用のパラメーターが出力されます。 このパラメーターを、URLCheckFilterが復号化し、正式なアクセスであるかどうかの判定を行います。 この属性はjsp/fileDownloadに対してチェックをかける場合にtrueにする必要があります。 通常はシステムリソースのFILEUD_URL_CHECKで設定します。 初期値は、 "false"(確認キーを出力しない) です。
        変更履歴:
        5.9.32.1 (2018/05/08) 追加
      • toString

        public java.lang.String toString()
        このオブジェクトの文字列表現を返します。 基本的にデバッグ目的に使用します。
        オーバーライド:
        toString クラス内 CommonTagSupport
        戻り値:
        このクラスの文字列表現
        このメソッドは、nullを返しません