Javaコネクタに渡すデータを書き込むための出力ストリームです。
入力データをストリームとして扱う場合に使用します。
java.lang.Object
└java.io.FileOutputStream
└com.fujitsu.systemwalker.outputassist.connector.FormsStream
public class FormsStream
extends java.io.FileOutputStream
implements FormBase
FormsStreamクラスのsetGrpOutメソッドで指定するフィールドを以下に示します。
定数 | 説明 |
---|---|
GRPOUT_NOGRP | マルチフォーム出力しません。 |
GRPOUT_GRP | マルチフォーム出力します。 |
FormsStreamクラスのsetGrpDelimitModeメソッドで指定するフィールドを以下に示します。
定数 | 説明 |
---|---|
DELIMIT_ANY | 以下の場合に指定します。
|
DELIMIT_SPACE | 入力データ形式が「可変長」、区切り文字が「1個以上の空白」の場合に指定します。 |
DELIMIT_TAB | 以下の場合に指定します。
|
DELIMIT_FIXED | 入力データ形式が「固定長」、区切り文字が「区切り文字なし」の場合に指定します。 |
DELIMIT_FIXEDDELIMIT | 入力データ形式が「固定長」、区切り文字が「区切り文字あり」の場合に指定します。 |
DELIMIT_XML | 入力データ形式が「XML形式」の場合に指定します。 |
インタフェース com.fujitsu.systemwalker.outputassist.connector.FormBase から継承した文字コードを意味するフィールドについては、以下を参照してください。
⇒“4.7.1.1 フィールド一覧”
FormsStreamクラスのコンストラクタを以下に示します。
FormsStreamクラスのコンストラクタ
コンストラクタの概要 |
---|
FormsStream(java.lang.String assets) 帳票格納ディレクトリを指定して、データを書き込むための出力ストリームを作成します。 |
FormsStreamクラスのメソッドを以下に示します。
FormsStreamクラスのメソッド
分類 | メソッド一覧 | |||
---|---|---|---|---|
○ | void | |||
1つの帳票出力時の帳票名を指定します。 | ||||
○ | void | |||
帳票資源の文字コード系を指定します。 | ||||
○ | void | |||
ストリームに渡すデータの文字コードを指定します。 | ||||
○ | void | |||
入力データ形式が「XML形式」で、XMLルートとデータルートが異なる場合に、XMLデータ中のデータルートの親要素のパスを指定します。 | ||||
○ | void | setGrpOut(int group) (*1) | ||
マルチフォーム出力するときに指定します。 | ||||
○ | void | |||
マルチフォーム出力/組合せフォーム出力時の帳票名を指定します。 | ||||
○ | void | |||
マルチフォーム/組合せフォーム用帳票名データ区切り文字種別を指定します。 | ||||
○ | void | |||
マルチフォーム/組合せフォーム用帳票名データ区切り文字を指定します。 | ||||
○ | void | |||
マルチフォーム用帳票名データフィールド長を指定します。 | ||||
○ | void | |||
組合せフォーム出力するときに指定します。 | ||||
○ | void | |||
組合せフォーム定義ファイル名を指定します。 | ||||
○ | void | |||
指定されたバイト配列の b.length バイトを、この出力ストリームに書き込みます。 | ||||
○ | void | |||
指定されたバイト配列からのオフセット位置 off から始まる len バイトを、この出力ストリームに書き込みます。 | ||||
○ | void | |||
指定されたバイトデータを、出力ストリームに書き込みます。 | ||||
○ | void | |||
出力ストリームを閉じ、このストリームに関連するシステムリソースを解放します。 | ||||
○ | void | |||
Javaインタフェースが使用している資源を解放します。 |
○:List Managerでサポートしているメソッドです。
-:List Managerでサポートしていないメソッドです。
*1:以下のように、1つの帳票を出力する場合とマルチフォーム出力する場合、または組合せフォーム出力する場合で指定が必須なメソッドが異なります。
・1つの帳票を出力する場合
-setScriptFileメソッド
・マルチフォーム出力する場合
-setGrpOutメソッド -setLcFormメソッド -setGrpDelimitModeメソッド
・組合せフォーム出力する場合
-setCbFormメソッド -setLcFormメソッド -setGrpDelimitmodeメソッド -setCbFileメソッド
用途
帳票格納ディレクトリを指定して、データを書き込むための出力ストリームを作成します。
パラメータ
帳票管理サーバでユーザアプリケーションを実行する場合は、帳票管理サーバの帳票格納ディレクトリをフルパスで指定します。省略すると、帳票管理サーバの環境設定ファイルのLmlcFormDirキーの指定が有効になります。
List Creatorコネクタ連携時は、アプリケーションサーバの帳票格納ディレクトリをフルパスで指定します。省略した場合、List Creator Connectorの環境設定で指定した帳票格納ディレクトリが有効となります。List Creator Connectorの環境設定については、List Creator Connectorに添付のオンラインマニュアルを参照してください。
例外
ConnectorException, IOException
注意
帳票定義情報の配置場所と指定方法については、以下を参照してください。
⇒“付録A 帳票資源の指定方法”
帳票格納ディレクトリ名の末尾には、以下を指定しないでください。
帳票管理サーバ、またはアプリケーションサーバがWindowsの場合
「円マーク(\)」
帳票管理サーバがSolaris/Linuxの場合、またはアプリケーションサーバがSolaris/Linuxの場合
「スラッシュ(/)」
帳票名または帳票格納ディレクトリに、全角文字および半角カナ文字は指定できません。
指定できる文字については、以下を参照してください。
⇒“第8章 List Manager帳票出力インタフェースで指定できる文字”
また、List Creatorコネクタ連携時、アプリケーションサーバから帳票管理サーバにファイルを転送するときに指定可能なパス長については、以下を参照してください。
⇒“4.10 Javaインタフェース使用時の注意事項”
帳票管理サーバがWindowsの場合、帳票格納ディレクトリとしてネットワークドライブ(UNC 指定(¥¥コンピュータ名¥共有名¥ディレクトリ名)を除く)、またはリムーバブルディスクを指定しないでください。
備考
帳票出力サーバに帳票定義情報を配置した場合、このコンストラクタで帳票格納ディレクトリを指定しないでください。指定しない場合、帳票出力サーバの環境設定ファイルのLmlcFormDir キーで指定した帳票格納ディレクトリの指定が有効になります。
List Creatorコネクタ連携時、帳票管理サーバに帳票定義情報を配置する場合は、帳票管理サーバの帳票格納ディレクトリをPrintPropertiesクラスのsetPropertyメソッドのID_REMOTEDIRECTORYキーで指定してください。
ID_REMOTEDIRECTORYキーを指定しない場合は、帳票管理サーバの環境設定ファイルのLmlcFormDirキーの指定が有効となります。
●ユーザ資源情報に関するメソッド
用途
1つの帳票出力時の帳票名を指定します。
パラメータ
1つの帳票を出力するときに使用する帳票名を指定します。
帳票属性の編集コマンド(lmedtformatrコマンド)で定義した帳票名を指定します。
例外
ConnectorException
注意
1つの帳票を出力する場合(マルチフォーム出力、または組合せフォーム出力をしない場合)は、このメソッドを必ず指定してください。
|
用途
帳票資源の文字コード系を指定します。
パラメータ
詳細については、以下を参照してください。
⇒“4.7.1.3 メソッドの詳細”
例外
ConnectorException
注意
文字コード系については以下を参照してください。
⇒“付録C 文字コード系に関する注意事項(帳票配信・出力時)”
List Creatorコネクタ連携時の文字コード系については、以下を参照してください。
⇒“付録D 文字 コード系に関する注意事項(List Creatorコネクタ連携時)”
List Creatorコネクタ連携時に帳票定義情報を転送する場合の文字コード系については、以下を参照してください。
⇒“D.2.2 アプリケーションサーバがSolaris/Linuxの場合”
|
用途
ストリームに渡すデータの文字コードを指定します。
パラメータ
ストリームに渡すデータの文字コードを指定します。
Shift-JIS
UNICODE(UCS2 リトルエンディアン)
UNICODE(UCS2 ビッグエンディアン)
UNICODE(UTF8)
EUC
例外
ConnectorException
注意
ストリームに渡すデータは、パラメータで指定した文字コード系で指定してください。XML形式のデータを指定した場合は無効になります。
文字コード系については以下を参照してください。
⇒“付録C 文字コード系に関する注意事項(帳票配信・出力時)”
List Creatorコネクタ連携時の文字コード系については、以下を参照してください。
⇒“付録D 文字 コード系に関する注意事項(List Creatorコネクタ連携時)”
List Creatorコネクタ連携時に帳票定義情報を転送する場合の文字コード系については、以下を参照してください。
⇒“D.2.2 アプリケーションサーバがSolaris/Linuxの場合”
帳票管理サーバがSolaris/Linuxの場合で、「CODE_EUC」を指定するとき、setFileType メソッドで、「CODE_EUC_U90」または「CODE_EUC_S90」を指定してください。
帳票管理サーバがLinuxの場合は、文字コードにShift-JIS、およびUNICODE(UCS2 リトルエンディアン/UCS2 ビッグエンディアン))を使用できないため、「CODE_SJIS」、「CODE_UCS2LE」および「CODE_UCS2BE」を指定しないでください。
「CODE_UTF8」を指定する場合、setFileTypeメソッドで「CODE_UTF8」を指定してください。
|
用途
入力データ形式が「XML形式」で、XMLルートとデータルートが異なる場合に、XMLデータ中のデータルートの親要素のパスを指定します。
XMLデータ中のこのメソッドで指定したパス直下にデータルートが複数存在する場合は、すべてのデータルートを検索します。
このメソッドの呼び出しを省略すると、以下のようにXMLデータからデータルートを検索します。
XMLルートとデータルートが同じ名前の場合
XMLルートをデータルートとみなします。
XMLルートとデータルートが異なる場合
XMLルート直下の子要素の中からデータルートを検索します。
パラメータ
XMLデータ中のデータルートの親要素のパスを指定します。
データルートの親要素のパスは、「スラッシュ(/)」を始点にデータルートの親要素までの要素名を「スラッシュ(/)」で区切って指定します。それ以外の形式は指定できません。
例外
ConnectorException
●マルチフォーム出力/組合せフォーム出力用ユーザ資源情報に関するメソッド
用途
マルチフォーム出力するときに指定します。
パラメータ
マルチフォーム出力するかどうかを指定します。
マルチフォーム出力しません。
マルチフォーム出力します。
例外
ConnectorException
注意
マルチフォーム出力する場合(setGrpOutメソッドに「GRPOUT_GRP」を指定した場合)、setLcFormメソッドで帳票名を必ず指定してください。
|
用途
マルチフォーム出力/組合せフォーム出力時の帳票名を指定します。
パラメータ
マルチフォーム出力する場合(setGrpOutメソッドに「GRPOUT_GRP」を指定した場合)、または組合せフォーム出力する場合(setCbFormメソッドに「true」を指定した場合)に、使用する帳票名を指定します。
帳票属性の編集コマンド(lmedtformatrコマンド)で定義した帳票名を指定します。
複数の帳票名を「セミコロン(;)」で区切って帳票を出力する順に指定します。
例外
ConnectorException
注意
マルチフォーム出力する場合(setGrpOutメソッドに「GRPOUT_GRP」を指定した場合)、または組合せフォーム出力する場合(setCbFormメソッドに「true」を指定した場合)は、このメソッド で帳票名を必ず指定してください。
備考
マルチフォーム出力する場合、このメソッドで指定した帳票名のうち、先頭に指定した帳票名の以下の情報がすべての帳票に対して有効となります。
帳票属性の編集コマンド(lmedtformatrコマンド)で指定する帳票属性に関する情報
プリンタ構成の編集コマンド(lmedtprinfoコマンド)で指定するプリンタ構成に関する情報
List Creatorデザイナで指定した帳票出力に関する情報
ただし、メソッドの指定方法によっては、帳票ごとに切り替えることが可能な情報があります。マルチフォーム出力時の留意事項については、以下を参照してください。
⇒List Creatorに添付のオンラインマニュアル“ 帳票設計編”
入力データ形式が「XML形式」でマルチフォーム出力時、帳票に置換フォントが設定されている場合、指定する先頭の帳票の置換フォントの設定が有効になります。
|
用途
マルチフォーム/組合せフォーム用帳票名データ区切り文字種別を指定します。
パラメータ
マルチフォーム/組合せフォーム用帳票名データ区切り文字種別を指定します。
以下の場合に指定します。
入力データ形式が「可変長」、区切り文字が「バーティカルバー(|)」「シャープ(#)」「アスタリスク(*)」「任意」のいずれかの場合
入力データ形式が「CSV 形式」、区切り文字が「カンマ(,)」の場合
入力データ形式が「可変長」、区切り文字が「1 個以上の空白」の場合に指定します。
以下の場合に指定します。
入力データが「可変長」、区切り文字が「タブ」の場合
入力データが「CSV 形式」、区切り文字が「タブ」の場合
入力データ形式が「固定長」、区切り文字が「区切り文字なし」の場合に指定します。
DELIMIT_FIXEDDELIMIT:
入力データ形式が「固定長」、区切り文字が「区切り文字あり」の場合に指定します。
入力データ形式が「XML形式」の場合に指定します。
例外
ConnectorException
注意
マルチフォーム出力/組合せフォーム出力する場合は、このメソッドを必ず指定してください。
入力データ形式が「固定長」の場合(このメソッドで「DELIMIT_FIXED」または「DELIMIT_FIXEDDELIMIT」を指定した場合)は、帳票名データのフィールド長をsetGrpBytesメソッドで必ず指定してください。
|
用途
マルチフォーム出力する場合(setGrpOutメソッドに「GRPOUT_GRP」を指定した場合)、または組合せフォーム出力する場合(setCbFormメソッドに「true」を指定した場合)で、任意の区切り文字を使用する場合(setGrpDelimitModeメソッドに「DELIMIT_ANY」を指定した場合)に、実際に使用する区切り文字を指定します。
区切り文字は、List Creatorデザイナのデータ定義画面の[環境定義]タブで指定した入力データ形式と区切り文字にしたがって指定します。
パラメータ
マルチフォーム/組合せフォーム用帳票名データ区切り文字を1 バイトの文字列で指定します。
例外
ConnectorException
注意
表にある条件でマルチフォーム/組合せフォーム用帳票名データ区切り文字に「任意の1バイト文字」または「区切り文字あり」を指定する場合の、区切り文字の文字コードについて以下に示します。
帳票管理サーバ | 入力データの文字コード系 | 入力データ形式 | マルチフォーム/組合せフォーム用帳票名データ区切り文字の文字コード |
---|---|---|---|
Windows | UNICODE(UCS2/UTF8) | 可変長 | 0x007F/0x7F以下の文字 |
固定長 | |||
Solaris | EUC(U90/S90)またはUNICODE(UTF8) | 可変長 | 0x7F以下の文字 |
固定長 |
組合せフォーム出力する場合、「コロン(:)」は指定しないでください。
|
用途
マルチフォーム出力する場合(setGrpOutメソッドに「GRPOUT_GRP」を指定した場合)に、入力データ中の帳票名データのフィールド長を指定します。
入力データ形式が「固定長」の場合(setGrpDelimitModeメソッドに「DELIMIT_FIXED」または「DELIMIT_FIXEDDELIMIT」を指定した場合)は、このメソッドを必ず指定してください。区切り文字ありの場合は、区切り文字を含まない長さを指定してください。
パラメータ
マルチフォーム用帳票名データフィールド長を指定します。
例外
ConnectorException
|
用途
組合せフォーム出力するときに指定します。
このメソッドの呼び出しを省略すると、組合せフォーム出力は行われません。
パラメータ
組合せフォーム出力するかどうかを指定します。
false:組合せフォーム出力しません。
true :組合せフォーム出力します。
例外
ConnectorException
注意
組合せフォーム出力する場合は、setGrpDelimitMode メソッド、およびsetGrpDelimitメソッドで帳票名データ区切り文字を指定してください。
組合せフォーム出力する場合は、setLcFormメソッドで帳票名を必ず指定してください。
|
用途
組合せフォーム定義ファイル名を指定します。
組合せフォーム出力する場合は、このメソッドで組合せフォーム定義ファイル名を必ず指定してください。
組合せフォーム定義ファイルとは、組み合わせて出力する帳票定義情報と、帳票定義情報の重なり順などが定義されたファイルです。
パラメータ
組合せフォーム定義ファイル名をフルパスで指定します。
例外
ConnectorException
注意
組合せフォーム定義ファイルの文字コード系については、List Creatorのオンラインマニュアル“帳票設計編”を参照してください。
以下の場合、このメソッドにファイル名のみ指定してください。
コネクタ連携時に組合せフォーム定義ファイルを転送した場合
●データ出力に関するメソッド
用途
指定されたバイト配列の b.length バイトを、この出力ストリームに書き込みます。
パラメータ
書き込まれるデータ
例外
用途
指定されたバイト配列からのオフセット位置offから始まるlenバイトを、この出力ストリームに書き込みます。
パラメータ
データ
データの開始オフセット
書き込むバイト数
例外
用途
指定されたバイトデータを、出力ストリームに書き込みます。OutputStreamのwriteメソッドを実装します。
パラメータ
バイト
例外
用途
出力ストリームを閉じ、このストリームに関連するシステムリソースを解放します。以降は、この出力ストリームをバイトの書き込みに使用することはできません。
例外
IOException
注意
帳票出力を行う前に、このメソッドを必ず呼び出してください。
●資源解放に関するメソッド
用途
Javaインタフェースが使用している資源を解放します。
例外
ConnectorException
注意
オブジェクトを破棄する前に、このメソッドを必ず呼び出してください。
文字コード系については以下を参照してください。
⇒“C.1 List Managerで扱える文字コード系”
List Creatorコネクタ連携時の文字コード系については、以下を参照してください。
⇒“付録D 文字 コード系に関する注意事項(List Creatorコネクタ連携時)”
帳票出力を行う前に、出力ストリームは必ず 閉じてください。
閉じずに帳票出力を行うと、例外ConnectorException(エラーコード「OAJC_ERROR_PRINTOUT」)が発生し、イベントログ/システムログにメッセージ
”[%1] [%2] データファイル<%3>の読込みに失敗しました。データファイル名を確認してください。”
が通知されます。また、閉じずに、OWFファイル生成を行うと、例外ConnectorException(エラーコード「OAJC_ERROR_OWFEXCEPTION」)が発生し、詳細情報として例外OwfException(エラーコード「OWF_ERROR_ACCESS_DENIED」)が発生します。