|
|
|||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | |||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | |||||||||
java.lang.Objectjavax.servlet.jsp.tagext.TagSupport
javax.servlet.jsp.tagext.BodyTagSupport
org.opengion.hayabusa.taglib.CommonTagSupport
org.opengion.hayabusa.taglib.WriteTableTag
public class WriteTableTag
DBTableModelオブジェクトを指定のファイルに出力するタグです。 データ(DBTableModel)と、コントローラ(WriteTableTagForm)を与えて、 外部からコントロールすることで、各種形式で データ(DBTableModel)を表示できます。 writeTableタグ に対して、コマンドを与えることにより、内部のコントローラの 実装に対応した、 形式でデータを作成します。
●形式:
<og:writeTable
fileURL = "{@USER.ID}" 保存先ディレクトリ名
filename = "{@filename}" 保存ファイル名
encode = "UnicodeLittle" 保存ファイルエンコード名
/>
●body:あり(writeTableParam)
●Tag定義:
<og:writeTable
writerClass 【TAG】実際に書き出すクラス名の略称(TableWriter_**** クラスの ****)を指定します(初期値:Default)
separator 【TAG】可変長ファイルを作成するときの項目区切り文字をセットします (初期値:TableWriter#TAB_SEPARATOR[= ])
headerSequence 【TAG】DBTableModelの出力順(LNSCD など)をセットします
fileURL 【TAG】ファイル保存先ディレクトリ名を指定します
filename 【TAG】ファイルを作成するときのファイル名をセットします (初期値:FILE_ENCODE[=UnicodeLittle])
encode 【TAG】ファイルを作成するときのファイルエンコーディング名をセットします (初期値:FILE_ENCODE[=UnicodeLittle])
fileAppend 【TAG】追加モードで書き込むかどうか[true/false]を指定します(初期値:false[新規モード])
direct 【廃止】結果をダイレクトにEXCEL起動するかどうか[true/false]を指定します(初期値:false[ファイル])
zip 【TAG】結果をファイルに出力するときに、ZIPで圧縮するかどうか[true/false]を指定します(初期値:false)
tableId 【TAG】(通常使いません)sessionから所得する DBTableModelオブジェクトの ID
scope 【TAG】キャッシュする場合のスコープ[request/page/session/applicaton]を指定します(初期値:session)
disposition 【TAG】Content-Disposition (inline:埋め込む/attachment:ダイアログを起動)を指定します(初期値:attachment)
sheetName 【TAG】EXCELファイルを書き出すときのシート名を設定します
refSheetName 【TAG】EXCEL雛型参考ファイルのシート名を設定します
refFileURL 【TAG】EXCEL雛型参照ファイルのディレクトリ名をセットします
refFilename 【TAG】EXCEL雛型参考ファイル名をセットします
useNumber 【TAG】行番号情報を、出力する/しない[true/false]を指定します(初期値:true)
columns 【TAG】書き込み先ファイルのカラム列を、外部(タグ)より指定します
useRenderer 【TAG】書込処理でコードリソースのラベル変換を行うかどうかを指定します (初期値:USE_TABLE_WRITER_RENDERER[=false])
selectedAll 【TAG】チェック行のみを対象にするかを指定します(初期値:true)。
fontName 【TAG】EXCEL出力時のデフォルトフォント名を設定します (初期値:TABLE_WRITER_DEFAULT_FONT_NAME[=MS Pゴシック])
fontPoint 【TAG】EXCEL出力時のデフォルトフォントポイント数を設定します
language 【TAG】タグ内部で使用する言語コード[ja/en/zh/…]を指定します
debug 【TAG】デバッグ情報を出力するかどうか[true/false]を指定します(初期値:false)
> ... Body ...
</og:writeTable>
●使用例
<og:writeTable ・・・・・ >
<og:writeTableParam
key = "Tablename" value="GE12"
/>
<og:writeTableParam
key = "First" First:最初に登録
>
insert into GE12bk
select * from GE12
where SYSTEM_ID='**'
</og:writeTableParam
<og:writeTableParam
key = "First" First:の2番目に登録
>
delete from GE12 where SYSTEM_ID='**' and KBSAKU='0'
</og:writeTableParam
<og:writeTableParam
key = "Last" Last:最後に登録
>
update GE12 set XXXX='YYYY' where SYSTEM_ID='**' and KBSAKU='0'
</og:writeTableParam
</og:writeTableParam| フィールドの概要 |
|---|
| クラス 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 |
| コンストラクタの概要 | |
|---|---|
WriteTableTag()
|
|
| メソッドの概要 | |
|---|---|
protected void |
addParam(HybsEntry entry)
WriteTable オブジェクトに渡すパラメータオブジェクトをセットします。 |
int |
doEndTag()
Taglibの終了タグが見つかったときに処理する doEndTag() を オーバーライドします。 |
int |
doStartTag()
Taglibの開始タグが見つかったときに処理する doStartTag() を オーバーライドします。 |
protected void |
release2()
タグリブオブジェクトをリリースします。 |
void |
setColumns(java.lang.String clms)
【TAG】書き込み先ファイルのカラム列を、外部(タグ)より指定します。 |
void |
setDirect(java.lang.String flag)
推奨されていません。 結果をダイレクトするとエンコード等でおかしな動きをする可能性がある。 |
void |
setDisposition(java.lang.String pos)
【TAG】Content-Disposition (inline:埋め込む/attachment:ダイアログを起動)を指定します(初期値:attachment)。 |
void |
setEncode(java.lang.String enc)
【TAG】ファイルを作成するときのファイルエンコーディング名をセットします (初期値:FILE_ENCODE[=UnicodeLittle])。 |
void |
setFileAppend(java.lang.String flag)
【TAG】追加モードで書き込むかどうか[true/false]を指定します(初期値:false[新規モード])。 |
void |
setFilename(java.lang.String filename)
【TAG】ファイルを作成するときのファイル名をセットします (初期値:FILE_ENCODE[=UnicodeLittle])。 |
void |
setFileURL(java.lang.String url)
【TAG】ファイル保存先ディレクトリ名を指定します。 |
void |
setFontName(java.lang.String name)
【TAG】EXCEL出力時のデフォルトフォント名を設定します (初期値:TABLE_WRITER_DEFAULT_FONT_NAME[=MS Pゴシック])。 |
void |
setFontPoint(java.lang.String point)
【TAG】EXCEL出力時のデフォルトフォントポイント数を設定します。 |
void |
setHeaderSequence(java.lang.String hs)
【TAG】DBTableModelの出力順(LNSCD など)をセットします。 |
void |
setRefFilename(java.lang.String filename)
【TAG】EXCEL雛型参考ファイル名をセットします。 |
void |
setRefFileURL(java.lang.String url)
【TAG】EXCEL雛型参照ファイルのディレクトリ名をセットします。 |
void |
setRefSheetName(java.lang.String sheet)
【TAG】EXCEL雛型参考ファイルのシート名を設定します。 |
void |
setSelectedAll(java.lang.String flag)
【TAG】チェック行のみを対象にするかを指定します。 |
void |
setSeparator(java.lang.String separator)
【TAG】可変長ファイルを作成するときの項目区切り文字をセットします (初期値:TableWriter#TAB_SEPARATOR[= ])。 |
void |
setSheetName(java.lang.String sheet)
【TAG】EXCELファイルを書き出すときのシート名を設定します。 |
void |
setTableId(java.lang.String tableId)
【TAG】(通常使いません)sessionから所得する DBTableModelオブジェクトの ID。 |
void |
setUseNumber(java.lang.String useNo)
【TAG】行番号情報を、出力する/しない[true/false]を指定します(初期値:true)。 |
void |
setUseRenderer(java.lang.String flag)
【TAG】書込処理でコードリソースのラベル変換を行うかどうかを指定します (初期値:USE_TABLE_WRITER_RENDERER[=false])。 |
void |
setWriterClass(java.lang.String writerClass)
【TAG】実際に書き出すクラス名の略称(TableWriter_**** クラスの ****)を指定します(初期値:Default)。 |
void |
setZip(java.lang.String flag)
【TAG】結果をファイルに出力するときに、ZIPで圧縮するかどうか[true/false]を指定します(初期値:false)。 |
java.lang.String |
toString()
このオブジェクトの文字列表現を返します。 |
| クラス 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 |
| コンストラクタの詳細 |
|---|
public WriteTableTag()
| メソッドの詳細 |
|---|
public int doStartTag()
javax.servlet.jsp.tagext.Tag 内の doStartTagCommonTagSupport 内の doStartTagpublic int doEndTag()
javax.servlet.jsp.tagext.Tag 内の doEndTagCommonTagSupport 内の doEndTag| 2.1.3.1 (2002/12/13) ContentType を、x-msexcel から vnd.ms-excel に変更した。 |
| 3.1.1.2 (2003/04/04) Tomcat4.1 対応。release2() を doEndTag()で呼ぶ。 |
| 3.1.3.0 (2003/04/10) FILE_ENCODE から、エンコード情報を取得する。 |
| 3.1.5.0 (2003/04/20) Content-Disposition を外部から指定できるように変更。 |
| 3.2.0.0 (2003/05/22) GZIPOutputStream を使用していたが、ZipOutputStream に変更。 |
| 3.5.4.1 (2003/12/01) 引数の PrintWriter を、OutputStream に変更。 |
| 3.5.4.3 (2004/01/05) 引数を、 PrintWriter に戻す。 |
| 3.6.0.2 (2004/10/04) EXCELダイレクト出力時にファイルエンドまで出力されない不具合対策 |
| 3.8.0.9 (2005/10/17) disposition属性を使用できるように変更します。 |
| 3.8.6.0 (2006/08/23) フォルダがない場合は、複数階層分のフォルダを自動で作成します。 |
| 4.3.4.3 (2008/12/22) Excel出力の判別方法を前方一致に変更 |
| 5.1.6.0 (2010/05/01) 画面帳票作成機能対応 |
| 5.5.2.0 (2012/05/01) ZIP時にもencodeが有効にする |
| 5.5.5.5 (2012/05/24) selectedAllの処理を追加 |
protected void release2()
CommonTagSupport 内の release2| 2.0.0.4 (2002/09/27) カスタムタグの release() メソッドを、追加 |
| 3.1.1.2 (2003/04/04) Tomcat4.1 対応。release2() を doEndTag()で呼ぶ。 |
| 3.1.3.0 (2003/04/10) FILE_ENCODE から、エンコード情報を取得する。 |
| 3.1.5.0 (2003/04/20) Content-Disposition を外部から指定できるように変更。 |
| 3.5.4.2 (2003/12/15) EXCELのシート名を指定できるように変更。 |
| 3.5.4.3 (2004/01/05) EXCEL雛型参照ファイルのURL,filenameを追加します。 |
| 3.8.5.3 (2006/08/07) writerClass 属性の初期値をシステムリソースより取得します。 |
| 3.8.5.3 (2006/08/07) fontName 属性を追加します。 |
| 3.8.5.3 (2006/08/07) fontPoint 属性を追加します。 |
| 3.8.6.0 (2006/08/23) directory 属性を追加します。 |
| 4.0.0 (2005/02/28) XMLファイルにセットする、param を追加。 |
| 5.2.1.0 (2010/10/01) 書込処理でコードリソースのラベル変換を行うかどうか useRenderer 属性追加 |
| 5.5.5.5 (2012/08/24) selectedAll属性を追加 |
public void setTableId(java.lang.String tableId)
tableId - sessionに登録する時の ID表示処理後に,(内部ポインタを書き換えた)DBTableModelオブジェクトを 同じキーで、sessionに登録します。 初期値は、HybsSystem.TBL_MDL_KEY です。
public void setSeparator(java.lang.String separator)
separator - 項目区切り文字TableWriter.TAB_SEPARATOR 可変長ファイルを作成するときの項目区切り文字をセットします。
(初期値:TableWriter#TAB_SEPARATOR[={@og.value TableWriter#TAB_SEPARATOR}])。public void setHeaderSequence(java.lang.String hs)
hs - 出力順 (LNSCD など)Label,Name,Size,Class,Data の各フィールドの頭文字のアルファベットで 出力順を設定します。
public void setRefFileURL(java.lang.String url)
url - EXCEL雛型参照ファイルのディレクトリ名 この属性で指定されるディレクトリに、ファイルをセーブします。
指定方法は、通常の fileURL 属性と同様に、先頭が、'/' (UNIX) または、2文字目が、
":" (Windows)の場合は、指定のURLそのままのディレクトリに、そうでない場合は、
システムパラメータ の FILE_URL 属性で指定のフォルダの下に、作成されます。
fileURL = "{@USER.ID}" と指定すると、FILE_URL 属性で指定のフォルダの下に、
さらに、各個人ID別のフォルダを作成して、そこにセーブします。| 3.5.4.3 (2004/01/05) 新規作成 |
| 4.0.0 (2005/01/31) StringUtil.urlAppend メソッドの利用 |
| 4.0.0.0 (2007/11/20) 指定されたディレクトリ名の最後が"\"or"/"で終わっていない場合に、"/"を付加する。 |
public void setFileURL(java.lang.String url)
url - 保存先ディレクトリ名 この属性で指定されるディレクトリに、ファイルをセーブします。
指定方法は、通常の fileURL 属性と同様に、先頭が、'/' (UNIX) または、2文字目が、
":" (Windows)の場合は、指定のURLそのままのディレクトリに、そうでない場合は、
システムパラメータ の FILE_URL 属性で指定のフォルダの下に、作成されます。
fileURL = "{@USER.ID}" と指定すると、FILE_URL 属性で指定のフォルダの下に、
さらに、各個人ID別のフォルダを作成して、そこにセーブします。| 3.5.4.3 (2004/01/05) 内部処理を、makeFileURL に移動。 |
| 4.0.0 (2005/01/31) StringUtil.urlAppend メソッドの利用 |
| 4.0.0.0 (2007/11/20) 指定されたディレクトリ名の最後が"\"or"/"で終わっていない場合に、"/"を付加する。 |
public void setFilename(java.lang.String filename)
filename - ファイル名SystemData.FILE_ENCODE ファイルを作成するときのファイル名をセットします。
(初期値:システム定数のFILE_ENCODE[={@og.value org.opengion.hayabusa.common.SystemData#FILE_ENCODE}])。public void setRefFilename(java.lang.String filename)
filename - EXCEL雛型参考ファイル名EXCEL雛型参考ファイル名をセットします。
| 3.5.4.3 (2004/01/05) 新規作成 |
public void setEncode(java.lang.String enc)
enc - ファイルエンコーディング名SystemData.FILE_ENCODE "DEFAULT","JISAutoDetect" ,"JIS", "EUC_JP", "MS932", "SJIS" , "Windows-31J" , "Shift_JIS"
(初期値:システム定数のFILE_ENCODE[={@og.value org.opengion.hayabusa.common.SystemData#FILE_ENCODE}])。| 2.2.0.0 (2002/12/17) 中国語(国際化)対応 エンコードの取得方法変更 |
| 3.1.3.0 (2003/04/10) FILE_ENCODE から、エンコード情報を取得する。 |
public void setWriterClass(java.lang.String writerClass)
writerClass - クラス名(の略称)TableWriterのサブクラス実際に書き出すクラス名(の略称)をセットします。 これは、org.opengion.hayabusa.io 以下の TableWriter_**** クラスの **** を 与えます。これらは、TableWriter インターフェースを継承したサブクラスです。 属性クラス定義の TableWriter を参照願います。
public void setFileAppend(java.lang.String flag)
flag - [true:追加モード/それ以外:新規モード]DBTableModelのファイルを、追加モードで書き込むかどうかをセットします。
@Deprecated public void setDirect(java.lang.String flag)
flag - [true:ダイレクト/それ以外:ファイル]結果をダイレクトに EXCEL ファイルとして出力するかどうかをセットします。
public void setZip(java.lang.String flag)
flag - ZIPで圧縮する [true:圧縮する/それ以外:しない]初期値は、圧縮しないです。
public void setDisposition(java.lang.String pos)
pos - Content-Disposition [inline/attachment]Content-Disposition を指定することで、ブラウザにアプリケーションデータを 埋め込むのか(inline)、セーブ/オープンのダイアログを起動するのか(attachment) 指定します。 この属性が有効なのは、direct="true" で、zip="false"(初期値)のときのみです。 値は、inline 、attachment が指定できます。 初期値は、attachment です。 注意:動作検証しましたが、inline と attachment で動作に差が現れませんでした。
| 3.1.5.0 (2003/04/20) Content-Disposition を外部から指定できるように変更。 |
| 3.8.0.9 (2005/10/17) Content-Disposition 初期値変更 inline ⇒ attachment |
public void setSheetName(java.lang.String sheet)
sheet - EXCELファイルのシート名EXCELファイルを書き出す時に、シート名を指定します。これにより、複数の形式の 異なるデータを順次書き出したり(appendモードを併用)することや、シートを指定して 新規にEXCELを作成することが可能になります。 初期値は、Sheet1 です。
| 3.5.4.2 (2003/12/15) 新規追加 |
public void setRefSheetName(java.lang.String sheet)
sheet - EXCEL雛型参考ファイルのシート名EXCELファイルを書き出す時に、雛型として参照するシート名を指定します。 これにより、複数の形式の異なるデータを順次書き出したり(appendモードを併用)する ことや、シートを指定して新規にEXCELを作成する場合にフォームを設定する事が可能になります。 初期値は、null(第一シート) です。
| 3.5.4.3 (2004/01/05) 新規追加 |
public void setFontName(java.lang.String name)
name - デフォルトフォント名SystemData.TABLE_WRITER_DEFAULT_FONT_NAME これは、EXCEL追加機能として実装されています。
EXCELファイルを書き出す時に、デフォルトフォント名を指定します。
フォント名は、EXCELのフォント名をそのまま使用してください。
内部的に、POI の org.apache.poi.hssf.usermodel.HSSFFont#setFontName( String )
に設定されます。
(初期値:システム定数のTABLE_WRITER_DEFAULT_FONT_NAME[={@og.value org.opengion.hayabusa.common.SystemData#TABLE_WRITER_DEFAULT_FONT_NAME}])。| 3.8.5.3 (2006/08/07) 新規追加 |
public void setFontPoint(java.lang.String point)
point - デフォルトフォントポイント数これは、EXCEL追加機能として実装されています。 EXCELファイルを書き出す時に、デフォルトポイント数を指定します。 内部的に、POI の org.apache.poi.hssf.usermodel.HSSFFont#setFontHeightInPoints( short ) に設定されます。 初期値は、システムリソース の TABLE_WRITER_DEFAULT_FONT_POINTS です。
| 3.8.5.3 (2006/08/07) 新規追加 |
public void setUseNumber(java.lang.String useNo)
useNo - 行番号情報を指定 [true:出力する/false:しない]通常のフォーマットでは、各行の先頭に行番号を出力します。 これは、#NAME 属性を使用する場合には、必ず出力する必要があります。 (#NAME 属性は、読み取り時には、必須です。) この、先頭の行番号が不要な場合(つまり、他のシステムへのデータ出力、 このシステムでは、#NAME 属性が出力されないため、読み込みできません。) この行番号を出力しないようにできます。 なお、EXCEL 出力には、この設定は適用されません。(暫定対応) 初期値は、true(出力する) です。
| 3.7.0.2 (2005/02/14) 新規追加 |
public void setColumns(java.lang.String clms)
clms - 書き込み先ファイルのカラム列(カンマ区切り文字)この指定により、書き込むカラムを限定的に使用することが可能です。 カラム名は、検索したDBTableModel上に含まれる名前で指定する必要があります。 別名で書き込みたい場合は、予めその名前で検索しておく必要があります。
| 4.0.0 (2005/12/31) 新規作成 |
public void setUseRenderer(java.lang.String flag)
flag - コードリソースのラベル変換を行うかどうかSystemData.USE_TABLE_WRITER_RENDERER コードリソースをそのままの値で出力すると、数字や記号になり何が書かれているのか
不明になります。
これは、コードリソースをラベルに変換して出力するかどうかを指定します。
当然、コードはユニークですが、ラベルはユニークになるかどうか保障はされていませんので
TableReader 系で読み込む場合には、リスクが発生します。
また、TableReader 系で読み込む場合にも、ラベルからコードを求める逆変換を行うように、
setUseRenderer メソッドで指定する必要があります。
従来は、TableWriter 系に、TableWriter_Renderer 系のクラスを作って対応していましたが、
このメソッドの属性値のフラグで、制御します。
(初期値:システム定数のUSE_TABLE_WRITER_RENDERER[={@og.value org.opengion.hayabusa.common.SystemData#USE_TABLE_WRITER_RENDERER}])。| 5.2.1.0 (2010/10/01) 新規作成 |
public void setSelectedAll(java.lang.String flag)
flag - 書き込み先ファイルのカラム列(カンマ区切り文字)falseを指定する事で、前画面でチェックした行のみを出力します。 初期値は全ての行を出力(true)です。 出力されるファイルの行番号は、1から振りなおされます。
| 5.5.5.5 新規作成 |
protected void addParam(HybsEntry entry)
entry - HybsEntryオブジェクトWriteTableParamTag クラスよりセットされます。
| 4.0.0 (2005/02/28) 新規追加 |
public java.lang.String toString()
CommonTagSupport 内の toString
|
openGion 5.5.9.0 | ||||||||
| 前のクラス 次のクラス | フレームあり フレームなし | ||||||||
| 概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド | ||||||||