概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
openGion 5.7.4.0
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

## org.opengion.fukurou.xml
クラス XSLT

    java.lang.Object
      org.opengion.fukurou.xml.XSLT

    public class XSLT

extends java.lang.Object

XML 入力ファイルに、XSL 入力ファイルを適用して、 XSLT変換を行います。 結果は、XML 出力ファイルにセーブします。 各ファイルの代わりに、Writer,Reader を設定することも可能です。 このパーサーでは、内部で実行中の入力ファイル情報を パラメータとして設定できます。 useFileInfo( true ) とセットすると、以下の４項目が内部的にセットされます。 ただし、この設定が可能なのは、XML 入力ファイルに、Reader ではなく、ファイル名を 渡した場合のみです。ストリームの場合は、各種情報は取れません。 入力ファイル(inXMLのフルパス) : FILEPATH (例: G:\webapps\gf\jsp\DOC10\query.jsp) 入力親フォルダ(inXMLの親フォルダ) : ADDRESS (例: DOC10) 入力ファイル(inXMLのファイル名) : FILENAME (例: query.jsp) 入力ファイル(inXMLの更新日付 ) : MODIFIED (例: yyyyMMddHHmmss形式) xsl ファイルでは、パラメータ は、xsl:param で宣言し、xsl:value-of で取り出します。 <xsl:param name="ADDRESS" select="" /> と宣言しておき、必要な箇所で <xsl:value-of select="$ADDRESS" /> とすれば、取得できます。 String inXSTL = "inXSLfile.xsl" ; // 入力ＸＳＬファイル String outFile = "outXMLfile.xml" ; // 出力ＸＭＬファイル String inXML = "inXMLfile.xml" ; // 入力ＸＭＬファイル XSLT xslt = new XSLT(); xslt.setXslFile( inXSTL ); xslt.setOutFile( outFile,false ); xslt.transform( inXML );

バージョン
  4.0
作成者
  Kazuhiko Hasegawa
導入されたバージョン:
  JDK5.0,

フィールドの概要
`static java.lang.String` | `ENCODE` 初期 ENCODE 名 "UTF-8"

コンストラクタの概要
`XSLT()`

メソッドの概要
`void` | `close()` 入力XSLファイルのストリームを閉じます。
`void` | `errClose(boolean flag)` transform 処理中にエラーが発生した場合に、出力ファイルを閉じるかどうかを指定します。
`void` | `jspInclude(boolean flag)` jsp:directive.include 発見時に、そのファイルを INCLUDE するかを指定するかどうかを指定します(初期値:true:使用する) 引数の処理対象ファイル(transformの引数ファイル)が、『.jsp』の場合、 jsp:directive.include 発見時に、そのファイルを INCLUDE するかを指定するか どうかを指定します。
`static void` | `main(java.lang.String[] args)` テスト用のメインメソッド java XSLT in_xml in_xsl out_xml
`void` | `setOutData(java.lang.String outData)` 結果XML ライターに、指定のデータを書き出します。
`void` | `setOutFile(java.lang.String file, boolean append)` 結果XML ファイル名と、そのオープン方法を指定します。
`void` | `setOutFile(java.io.Writer writer)` 結果XML データを出力する、Writer を指定します。
`void` | `setParamEntry(HybsEntry[] entry)` Transformer オブジェクトに対して、Parameter を設定します。
`void` | `setXslFile(java.io.Reader reader)` 入力XSLリーダーを、指定します。
`void` | `setXslFile(java.lang.String file)` 入力XSLファイルを、指定します。
`java.lang.String` | `toString()` このオブジェクトの内部文字列表現を返します。
`void` | `transform(java.io.Reader xmlReader)` XML ファイルをXSLT変換します。
`void` | `transform(java.lang.String file)` XML ファイルをXSLT変換します。
`void` | `transform(java.lang.String file, boolean isJspInclude)` XML ファイルをXSLT変換します。
`void` | `useEncode(java.lang.String encode)` ファイル名指定で XML,XSL,OUTファイルを指定する場合のエンコードを指定します。
`void` | `useErrXmlIn(boolean flag)` transform 処理中エラーを、出力ファイルに、XML形式でエラーを追記するかどうかを指定します。
`void` | `useFileInfo(boolean flag)` 実行中の入力ファイル名などの属性情報を パラメータとして設定するかどうかを指定します。

クラス java.lang.Object から継承されたメソッド
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

フィールドの詳細

### ENCODE

    public static final java.lang.String ENCODE

  初期 ENCODE 名 "UTF-8"

  関連項目:
    定数フィールド値

コンストラクタの詳細

### XSLT

    public XSLT()

メソッドの詳細

### setXslFile

    public void setXslFile(java.lang.String file)

  入力XSLファイルを、指定します。

  パラメータ:
    `file` - 入力XSLファイル
  関連項目:
    `setXslFile( Reader )`

### setXslFile

    public void setXslFile(java.io.Reader reader)

  入力XSLリーダーを、指定します。

  パラメータ:
    `reader` - 入力XSLリーダー
  関連項目:
    `setXslFile( String )`

### setOutFile

    public void setOutFile(java.lang.String file,
                           boolean append)

  結果XML ファイル名と、そのオープン方法を指定します。 結果XML ファイルを、追記する(append=true)か新規作成する(append=false)か指定します。 なお、結果XML ファイル(outFile) を指定しない(=null)か、特別な名称 "System.out" 文字列を渡すと、標準出力に 結果を出力します。

  パラメータ:
    `file` - 出力ファイル名(null または、"System.out" 文字列時は、標準出力)
    `append` - [true]追記する/false:新規作成する]

### setOutFile

    public void setOutFile(java.io.Writer writer)

  結果XML データを出力する、Writer を指定します。 ファイル、標準出力、JSPWriter など、必要に応じて Writer を作成してください。 標準出力(System.out)の場合は、NonClosePrintWriter クラスなどの非close()処理系を、 JSPWriterの場合は、NonFlushPrintWriter クラスなどの非flush()、close()処理系を、 使用してください。

  パラメータ:
    `writer` - 出力するWriter

### setOutData

    public void setOutData(java.lang.String outData)

  結果XML ライターに、指定のデータを書き出します。

  パラメータ:
    `outData` - 書き出すデータ

### transform

    public void transform(java.lang.String file)

  XML ファイルをXSLT変換します。 XML 入力ファイルに、XSL 入力ファイルを適用して、 XSLT変換を行います。 結果は、XML ファイルにセーブします。 拡張子が『.jsp』の場合、jsp:directive.include 処理を行います。

  パラメータ:
    `file` - 入力XMLファイル
  関連項目:
    `transform( Reader )`
  変更履歴:

    4.0.0.2 (2007/12/10) 拡張子が『.jsp』の場合、jsp:directive.include 処理を行います。

### transform

    public void transform(java.lang.String file,
                          boolean isJspInclude)

  XML ファイルをXSLT変換します。 XML 入力ファイルに、XSL 入力ファイルを適用して、 XSLT変換を行います。 結果は、XML ファイルにセーブします。 引数の isJspInclude によって、jsp:directive.include 処理を行うかどうか判断します。

  パラメータ:
    `file` - 入力XMLファイル
    `isJspInclude` - jsp:directive.include 処理を行うかどうか。
  関連項目:
    `transform( Reader )`
  変更履歴:

    4.2.3.0 (2008/05/26) jsp:directive.include 処理の実施可否を引数指定します。
    5.2.1.0 (2010/10/01) JspIncludeReader#getString の第３引数を廃止
    5.6.7.1 (2013/08/09) デバッグ用に、ファイルリストを取得しておきます。

### transform

    public void transform(java.io.Reader xmlReader)

  XML ファイルをXSLT変換します。 XML 入力リーダーに、XSL 入力リーダーを適用して、 XSLT変換を行います。 結果は、XML ライターに書き出します。 この処理の終了後に、入力XML リーダー は、close() されます。

  パラメータ:
    `xmlReader` - 入力XML リーダー
  関連項目:
    `transform( String )`
  変更履歴:

    5.6.5.2 (2013/06/21) エラーメッセージが判りにくいので、追記します。
    5.6.7.1 (2013/08/09) デバッグ用に、ファイルリストを出力します。

### setParamEntry

    public void setParamEntry(HybsEntry[] entry)

  Transformer オブジェクトに対して、Parameter を設定します。 指定されたパラメーターキーは、xsl ファイルでは、xsl:param で宣言し、 xsl:value-of で取り出します。 <xsl:param name="ADDRESS" select="" /> と宣言しておき、必要な箇所で <xsl:value-of select="$ADDRESS" /> とすれば、取得できます。

  パラメータ:
    `entry` - HybsEntry配列

### errClose

    public void errClose(boolean flag)

  transform 処理中にエラーが発生した場合に、出力ファイルを閉じるかどうかを指定します。 処理途中でエラーが発生した場合に、そこで処理を中断するか、それとも、 無視して、さらに処理を進めるかを指定することが可能です。 継続して処理を進めたい場合は、出力ファイルを閉じないため、false を 設定します。ただし、エラー時には、RuntimeException は throw されます。 初期値は、true(閉じる)です。

  パラメータ:
    `flag` - エラー時クローズ [true:閉じる/false:閉じない]

### useErrXmlIn

    public void useErrXmlIn(boolean flag)

  transform 処理中エラーを、出力ファイルに、XML形式でエラーを追記するかどうかを指定します。 処理途中でエラーが発生した場合に、ログだけではなく、結果XMLファイルに、 エラー内容や、エラーファイルなどを埋め込むと、XMLファイルとしてDB登録や、 その他集計等に使えます。 今は、GE70 スキーマ形式のファイルしか作成できません。 これは、#errClose( boolean ) メソッドと共に使用すると効果的です。 つまり、errClose = false; にして、エラー時でも出力ファイルを閉じずに、 処理を続ける事で、エラーメッセージもXMLファイルとして蓄積できます。 初期値は、false(使用しない)です。

  パラメータ:
    `flag` - エラー時XML形式 [false:使用しない/true:使用する]

### jspInclude

    public void jspInclude(boolean flag)

  jsp:directive.include 発見時に、そのファイルを INCLUDE するかを指定するかどうかを指定します(初期値:true:使用する) 引数の処理対象ファイル(transformの引数ファイル)が、『.jsp』の場合、 jsp:directive.include 発見時に、そのファイルを INCLUDE するかを指定するか どうかを指定します。 インクルードされたファイルとあわせて、正規のXML にならないと、パーサー エラーが発生します。 JSPソース解析を行うには、INCLUDE ファイルも考慮しないと正確な結果を 得られませんが、INCLUDE 先のファイルまで合わせる必要があるため、 場合によっては、INCLUDEファイルを無視しなければならないケースがあります。 初期値は、true(使用する)です。

  パラメータ:
    `flag` - エラー時XML形式 [false:使用しない/true:使用する]

### close

    public void close()

  入力XSLファイルのストリームを閉じます。

  変更履歴:

    5.6.7.1 (2013/08/09) includeしたファイルのキャッシュをクリアします。

### useFileInfo

    public void useFileInfo(boolean flag)

  実行中の入力ファイル名などの属性情報を パラメータとして設定するかどうかを指定します。 このパーサーでは、内部で実行中の入力ファイル情報を パラメータとして設定できます。 useFileInfo( true ) とセットすると、以下の４項目が内部的にセットされます。 入力ファイル(inXMLのフルパス) : FILEPATH (例: G:\webapps\gf\jsp\DOC10\query.jsp) 入力親フォルダ(inXMLの親フォルダ) : ADDRESS (例: DOC10) 入力ファイル(inXMLのファイル名) : FILENAME (例: query.jsp) 入力ファイル(inXMLの更新日付 ) : MODIFIED (例: yyyyMMddHHmmss形式)

  パラメータ:
    `flag` - セットする:true/セットしない:false
  変更履歴:

    4.0.0.0 (2007/09/25) ParameterMetaData を使用したパラメータ設定追加。
    5.5.7.2 (2012/10/09) HybsDateUtil を利用するように修正します。 xsl ファイルでは、xsl:param で宣言し、xsl:value-of で取り出します。 <xsl:param name="ADDRESS" select="" /> と宣言しておき、必要な箇所で <xsl:value-of select="$ADDRESS" /> とすれば、取得できます。 初期値は、false(セットしない) です。

### useEncode

    public void useEncode(java.lang.String encode)

  ファイル名指定で XML,XSL,OUTファイルを指定する場合のエンコードを指定します。 初期値は、UTF-8 です。

  パラメータ:
    `encode` - エンコード

### toString

    public java.lang.String toString()

  このオブジェクトの内部文字列表現を返します。 接続URL + "," + 接続ユーザー + " (" + 作成日付 + ")" です。

  オーバーライド:
    クラス `java.lang.Object` 内の `toString`
  戻り値:
    内部文字列表現

### main

    public static void main(java.lang.String[] args)
                     throws java.io.IOException

  テスト用のメインメソッド java XSLT in_xml in_xsl out_xml

  パラメータ:
    `args` - コマンド引数配列
  例外:
    `java.io.IOException` - 入出力エラーが発生した場合

概要 | パッケージ | クラス | 階層ツリー | 非推奨 API | 索引 | ヘルプ
| openGion 5.7.4.0
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

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