openGionopenGion
5.2.2.0

org.opengion.hayabusa.taglib
クラス FileManagerTag

java.lang.Object
  上位を拡張 javax.servlet.jsp.tagext.TagSupport
      上位を拡張 javax.servlet.jsp.tagext.BodyTagSupport
          上位を拡張 org.opengion.hayabusa.taglib.CommonTagSupport
              上位を拡張 org.opengion.hayabusa.taglib.FileManagerTag
すべての実装されたインタフェース:
java.io.Serializable, javax.servlet.jsp.tagext.BodyTag, javax.servlet.jsp.tagext.IterationTag, javax.servlet.jsp.tagext.JspTag, javax.servlet.jsp.tagext.Tag, javax.servlet.jsp.tagext.TryCatchFinally

public class FileManagerTag
extends CommonTagSupport

クライアントのファイルをサーバーにアップロードするタグです。 アップロード後の属性は、DBTableModel に格納することにより、通常のデータと 同様の取り出し方が可能です。 また、通常のファイルアップロード時の、form で使用する、enctype="multipart/form-data" を指定した場合の、他のリクエスト情報も、{@XXXX} 変数で取り出すことが可能です。 この upload タグでは、アップロード後に、指定のファイル名に変更する機能があります。 file 登録ダイアログで指定した name に、"_NEW" という名称を付けたリクエスト値を ファイルのアップロードと同時に送信することで、この名前にファイルを付け替えます。 また、アップロード後のファイル名は、name 指定の名称で、取り出せます。 クライアントから登録したオリジナルのファイル名は、name に、"_ORG" という名称 で取り出すことが可能です。 新ファイル名に拡張子が設定されていない場合は、オリジナルファイル名の拡張子をセット します。

関連項目:
直列化された形式
形式サンプル:
 ●形式:<og:upload fileURL="…" maxPostSize="…" />
 ●body:なし

 ●使用例 :

 【query.jsp】
       <form method="POST" action="result.jsp" enctype="multipart/form-data" target="RESULT">
       <table summary="layout" >
       <tr><og:input type="text" name="submitter" value="{@USER.JNAME}" size="20" msg="MSG0014" /></tr>
       <tr>
           <og:input type="file" name="file1"      size="30" msg="MSG0015" />
           <og:input             name="file1_NEW"  size="10" lbl="FILENAME" />
       </tr><tr>
           <og:input type="file" name="file2"      size="30" msg="MSG0015" />
           <og:input             name="file2_NEW"  size="10" lbl="FILENAME" />
       </tr><tr>
           <og:input type="file" name="file3"      size="30" msg="MSG0015" />
           <og:input             name="file3_NEW"  size="10" lbl="FILENAME" />
       </tr><tr>
           <og:column name="writable"     value="false"  />
       </tr>
       </table>

 【result.jsp】
       <og:upload
           fileURL     = "{@USER.ID}"
       />
       <br />
       <og:message msg="MSG0003" comment="ファイルの登録が完了しました。" />

       <og:view
           command      = "NEW"
           viewFormType = "HTMLTable"
           writable     = "{@writable}"
       />

       <table>
       <tr><og:input name="submitter" value="{@submitter}" /></tr>
       <tr><og:input name="writable"  value="{@writable}"  /></tr>
       <tr><og:input name="directory" value="{@directory}" /></tr>
       <tr><og:input name="file1"     value="{@file1}"     /></tr>
       <tr><og:input name="file1_NEW" value="{@file1_NEW}" /></tr>
       <tr><og:input name="file1_ORG" value="{@file1_ORG}" /></tr>
       <tr><og:input name="file2"     value="{@file2}"     /></tr>
       <tr><og:input name="file2_NEW" value="{@file2_NEW}" /></tr>
       <tr><og:input name="file2_ORG" value="{@file2_ORG}" /></tr>
       <tr><og:input name="file3"     value="{@file3}"     /></tr>
       <tr><og:input name="file3_NEW" value="{@file3_NEW}" /></tr>
       <tr><og:input name="file3_ORG" value="{@file3_ORG}" /></tr>
       </table>
機能階層
ファイル入力
バージョン
4.0
作成者
Kazuhiko Hasegawa
導入されたバージョン:
JDK5.0,

フィールドの概要
 
クラス javax.servlet.jsp.tagext.BodyTagSupport から継承されたフィールド
bodyContent
 
クラス javax.servlet.jsp.tagext.TagSupport から継承されたフィールド
id, pageContext
 
インタフェース javax.servlet.jsp.tagext.BodyTag から継承されたフィールド
EVAL_BODY_BUFFERED, EVAL_BODY_TAG
 
インタフェース javax.servlet.jsp.tagext.IterationTag から継承されたフィールド
EVAL_BODY_AGAIN
 
インタフェース javax.servlet.jsp.tagext.Tag から継承されたフィールド
EVAL_BODY_INCLUDE, EVAL_PAGE, SKIP_BODY, SKIP_PAGE
 
コンストラクタの概要
FileManagerTag()
           
 
メソッドの概要
 int doEndTag()
          Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。
 int doStartTag()
          Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。
protected  java.lang.String getTagName()
          タグの名称を、返します。
protected  void release2()
          タグリブオブジェクトをリリースします。
 void setAction(java.lang.String ac)
          【TAG】タブの一覧をどこから取得するかを指定します(初期値:AUTO)
 void setDbid(java.lang.String id)
          【TAG】(通常使いません)sessionから所得する DBTableModel オブジェクトの ID。
 void setFreeCount(java.lang.String cnt)
          【TAG】タブの一覧をどこから取得するかを指定します(初期値:AUTO)
 void setMaxPostSize(java.lang.String maxPS)
          【TAG】最大転送サイズ(Byte)を指定します(初期値:10485760)。
 void setRefKey(java.lang.String key)
          【TAG】リクエスト情報の クォーティション(') 存在チェックを実施するかどうか(true/false)を設定します(初期値:USE_SQL_INJECTION_CHECK)。
 void setSearchKeys(java.lang.String keys)
          【TAG】タブの一覧をどこから取得するかを指定します(初期値:AUTO)
 void setSyfiles(java.lang.String keys)
          【TAG】タブの一覧をどこから取得するかを指定します(初期値:AUTO)
 void setTableId(java.lang.String id)
          【TAG】(通常使いません)sessionから所得する DBTableModel オブジェクトの ID。
 java.lang.String toString()
          このオブジェクトの文字列表現を返します。
 
クラス org.opengion.hayabusa.taglib.CommonTagSupport から継承されたメソッド
add, add, addEventColumn, addEventColumn, check, check, commitTableObject, debugPrint, doAfterBody, doCatch, doFinally, get, getApplicationInfo, getAttributes, getBodyRawString, getBodyString, getContextAttribute, getContextPath, getCookie, getCSVParameter, getDataCondition, getDateFormat, getDBColumn, getDBFunctionName, getDocumentLink, getGUIInfo, getGUIInfoAttri, getLabel, getLabelInterface, getLanguage, getLongLabel, getMsglbl, getObject, getParameterNames, getParameterRows, getRequest, getRequestAttribute, getRequestCacheData, getRequestParameter, getRequestParameterValues, getRequestValue, getRequestValue, getRequestValues, getResource, getSanitizedBodyString, getScope, getSessionAttribute, getUser, getUserInfo, isAjaxSubmitRequest, isDebug, isNoTransitionRequest, isNull, jspPrint, removeContextAttribute, removeObject, removeRequestAttribute, removeSessionAttribute, set, setAjaxSubmitRequest, setCaseKey, setCaseVal, setContextAttribute, setCookie, setDebug, setLanguage, setLbl, setNoTransitionRequest, setObject, setObject, setParameterRows, setRequestAttribute, setRequestCacheData, setScope, setSessionAttribute, setUserInfo, startQueryTransaction, sys, sysBool, sysInt, useMainTrans, useQuotCheck, useTag, useXssCheck
 
クラス javax.servlet.jsp.tagext.BodyTagSupport から継承されたメソッド
doInitBody, getBodyContent, getPreviousOut, release, setBodyContent
 
クラス javax.servlet.jsp.tagext.TagSupport から継承されたメソッド
findAncestorWithClass, getId, getParent, getValue, getValues, removeValue, setId, setPageContext, setParent, setValue
 
クラス java.lang.Object から継承されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
インタフェース javax.servlet.jsp.tagext.Tag から継承されたメソッド
getParent, setPageContext, setParent
 

コンストラクタの詳細

FileManagerTag

public FileManagerTag()
メソッドの詳細

doStartTag

public int doStartTag()
Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。

定義:
インタフェース javax.servlet.jsp.tagext.Tag 内の doStartTag
オーバーライド:
クラス CommonTagSupport 内の doStartTag
戻り値:
int 後続処理の指示

doEndTag

public int doEndTag()
Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。

定義:
インタフェース javax.servlet.jsp.tagext.Tag 内の doEndTag
オーバーライド:
クラス CommonTagSupport 内の doEndTag
戻り値:
int

release2

protected void release2()
タグリブオブジェクトをリリースします。 キャッシュされて再利用されるので、フィールドの初期設定を行います。

オーバーライド:
クラス CommonTagSupport 内の release2

setAction

public void setAction(java.lang.String ac)
【TAG】タブの一覧をどこから取得するかを指定します(初期値:AUTO)

パラメータ:
tp - タブ一覧取得方法(「AUTO」)
説明:
 タブの一覧をどこから取得するかを指定します。
 現状の実装では、クエリを発行して一覧を生成する「DB」と、子タグである
 tabListタグを列挙してタブを定義する「TAG」が実装されています。
 
 また、「AUTO」と指定した場合は、Body部分の内容に応じて自動的に判定されます。
 初期値は、「AUTO」です。

setSyfiles

public void setSyfiles(java.lang.String keys)
【TAG】タブの一覧をどこから取得するかを指定します(初期値:AUTO)

パラメータ:
keys - タブ一覧取得方法(「AUTO」)
説明:
 タブの一覧をどこから取得するかを指定します。
 現状の実装では、クエリを発行して一覧を生成する「DB」と、子タグである
 tabListタグを列挙してタブを定義する「TAG」が実装されています。
 
 また、「AUTO」と指定した場合は、Body部分の内容に応じて自動的に判定されます。
 初期値は、「AUTO」です。

setRefKey

public void setRefKey(java.lang.String key)
【TAG】リクエスト情報の クォーティション(') 存在チェックを実施するかどうか(true/false)を設定します(初期値:USE_SQL_INJECTION_CHECK)。

パラメータ:
key - クォーティションチェックする ("true")/しない (それ以外)
説明:
 SQLインジェクション対策の一つとして、暫定的ではありますが、SQLのパラメータに
 渡す文字列にクォーティション(') を許さない設定にすれば、ある程度は防止できます。
 数字タイプの引数には、 or 5=5 などのクォーティションを使用しないコードを埋めても、
 数字チェックで検出可能です。文字タイプの場合は、必ず (')をはずして、
 ' or 'A' like 'A のような形式になる為、(')チェックだけでも有効です。
 (') が含まれていたエラーにする(true)/かノーチェックか(false)を指定します。
 初期値は、SystemData#USE_SQL_INJECTION_CHECK です。
変更履歴:
4.0.0 (2005/08/31) 新規追加

setFreeCount

public void setFreeCount(java.lang.String cnt)
【TAG】タブの一覧をどこから取得するかを指定します(初期値:AUTO)

パラメータ:
cnt - タブ一覧取得方法(「AUTO」)
説明:
 タブの一覧をどこから取得するかを指定します。
 現状の実装では、クエリを発行して一覧を生成する「DB」と、子タグである
 tabListタグを列挙してタブを定義する「TAG」が実装されています。
 
 また、「AUTO」と指定した場合は、Body部分の内容に応じて自動的に判定されます。
 初期値は、「AUTO」です。

setSearchKeys

public void setSearchKeys(java.lang.String keys)
【TAG】タブの一覧をどこから取得するかを指定します(初期値:AUTO)

パラメータ:
searchKeys - タブ一覧取得方法(「AUTO」)
説明:
 タブの一覧をどこから取得するかを指定します。
 現状の実装では、クエリを発行して一覧を生成する「DB」と、子タグである
 tabListタグを列挙してタブを定義する「TAG」が実装されています。
 
 また、「AUTO」と指定した場合は、Body部分の内容に応じて自動的に判定されます。
 初期値は、「AUTO」です。

setTableId

public void setTableId(java.lang.String id)
【TAG】(通常使いません)sessionから所得する DBTableModel オブジェクトの ID。

パラメータ:
id - sessionに登録する時の ID
説明:
 初期値は、HybsSystem.TBL_MDL_KEY です。
変更履歴:
3.5.2.0 (2003/10/20) nvalメソッドを適用するように変更。

setDbid

public void setDbid(java.lang.String id)
【TAG】(通常使いません)sessionから所得する DBTableModel オブジェクトの ID。

パラメータ:
id - sessionに登録する時の ID
説明:
 初期値は、HybsSystem.TBL_MDL_KEY です。
変更履歴:
3.5.2.0 (2003/10/20) nvalメソッドを適用するように変更。

setMaxPostSize

public void setMaxPostSize(java.lang.String maxPS)
【TAG】最大転送サイズ(Byte)を指定します(初期値:10485760)。

パラメータ:
maxPS - 最大転送サイズ
説明:
 最大転送サイズを指定します。初期値は、10*1024*1024 = 10MB です。
 指定は、Byte 単位で指定します。
変更履歴:
3.0.1.1 (2003/03/06) maxPostSize の設定バグ修正。

getTagName

protected java.lang.String getTagName()
タグの名称を、返します。 自分自身のクラス名より、自動的に取り出せないため、このメソッドをオーバーライドします。

オーバーライド:
クラス CommonTagSupport 内の getTagName
戻り値:
タグの名称
関連項目:
CommonTagSupport.getDocumentLink()
変更履歴:
4.0.0 (2005/01/31) 新規追加

toString

public java.lang.String toString()
このオブジェクトの文字列表現を返します。 基本的にデバッグ目的に使用します。

オーバーライド:
クラス CommonTagSupport 内の toString
戻り値:
このクラスの文字列表現

openGion 5.2.2.0

Webアプリケーションフレームワーク openGion
SourceForge.JPCopyright (c) 2009 The openGion Project.