クラス FileUDTag

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

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 を取り出します。
関連項目:
変更履歴:
4.3.0.0 (2008/07/04) 新規追加, 5.7.4.1 (2014/03/15) エラーメッセージ変更, 5.9.32.1 (2018/05/08) URLチェック対応, 7.3.2.3 (2021/04/09) システム定数のICON_DIRやIMAGE_DIRを使用します。
機能分類
ファイルアップロード/ダウンロード
形式サンプル:
●形式:一般ユーザーが直接組み込むことはありません。 ●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/filePopup.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}/icon/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) />
導入されたバージョン:
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チェック対応, 7.3.2.3 (2021/04/09) sysJspを、static化します。
    • setCommand

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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