クラスTransformerFactory
- 直系の既知のサブクラス:
SAXTransformerFactory
TransformerFactoryインスタンスを使用して、TransformerおよびTemplatesオブジェクトを作成できます。
どのファクトリ実装を作成するかを決めるシステム・プロパティの名前は"javax.xml.transform.TransformerFactory"です。 このプロパティは、TransformerFactory abstractクラスの具象サブクラスを命名します。 このプロパティが定義されていない場合は、プラットフォームのデフォルトが使用されます。
- 導入されたバージョン:
- 1.5
-
コンストラクタのサマリー
コンストラクタ -
メソッドのサマリー
修飾子と型メソッド説明abstract SourcegetAssociatedStylesheet(Source source, String media, String title, String charset) 「The xml-stylesheet processing instruction」から、指定された基準に一致するXMLSourceドキュメントに関連付けられているスタイル・シート仕様を取得します。abstract ObjectgetAttribute(String name) ユーザーがベースとなる実装の特定の属性を取り出すことができるようにします。abstract ErrorListenerTransformerFactoryのエラー・イベント・ハンドラを取得します。abstract booleangetFeature(String name) 機能の値を検索します。abstract URIResolverdocument()、xsl:import、またはxsl:includeで使用されるURIを解決するために変換時にデフォルトで使用されるオブジェクトを取得します。static TransformerFactoryTransformerFactory組込みシステム・デフォルト実装の新しいインスタンスを作成します。static TransformerFactoryTransformerFactoryの新しいインスタンスを取得します。static TransformerFactorynewInstance(String factoryClassName, ClassLoader classLoader) ファクトリ・クラス名からTransformerFactoryの新しいインスタンスを取得します。abstract TemplatesnewTemplates(Source source) Sourceを処理して、ソースのコンパイル表現であるTemplatesオブジェクトにします。abstract TransformerResultへのSourceのコピーを実行する新しいTransformerを作成します、たとえば、"「アイデンティティ変換」"。abstract TransformernewTransformer(Source source) SourceをTransformerObjectに処理します。abstract voidsetAttribute(String name, Object value) ユーザーがベースとなる実装に特定の属性を設定できるようにします。abstract voidsetErrorListener(ErrorListener listener) TransformerFactoryのエラー・イベント・リスナーを設定します。TransformerFactoryは、変換自体のためではなく、変換命令を処理するために使用されます。abstract voidsetFeature(String name, boolean value) このファクトリによって生成されたTransformerFactoryおよびTransformerまたはTemplateの機能を設定します。abstract voidsetURIResolver(URIResolver resolver) document()、xsl:import、またはxsl:includeで使用されるURIを解決するために変換時にデフォルトで使用されるオブジェクトを設定します。
-
コンストラクタの詳細
-
TransformerFactory
protected TransformerFactory()デフォルトのコンストラクタが意図的に保護されます。
-
-
メソッドの詳細
-
newDefaultInstance
public static TransformerFactory newDefaultInstance()TransformerFactory組込みシステム・デフォルト実装の新しいインスタンスを作成します。- 戻り値:
TransformerFactory組込みシステム・デフォルト実装の新しいインスタンス。- 導入されたバージョン:
- 9
-
newInstance
public static TransformerFactory newInstance() throws TransformerFactoryConfigurationErrorTransformerFactoryの新しいインスタンスを取得します。 このメソッドは、「JAXPルックアップ・メカニズム」を使用して、ロードするTransformerFactory実装クラスを決定します。アプリケーションが
TransformerFactory,への参照を取得すると、ファクトリを使用してtransformerのインスタンスを構成および取得することができます。- 戻り値:
- 新しいTransformerFactoryインスタンス。nullは不可。
- スロー:
TransformerFactoryConfigurationError- サービス構成エラーが発生した場合、または実装が使用できないかインスタンス化できない場合、スローされる。
-
newInstance
public static TransformerFactory newInstance(String factoryClassName, ClassLoader classLoader) throws TransformerFactoryConfigurationError ファクトリ・クラス名からTransformerFactoryの新しいインスタンスを取得します。 この関数は、クラス・パスに複数のプロバイダがある場合に便利です。 どのプロバイダがロードされるかを指定できるため、アプリケーションをさらに制御できます。アプリケーションが
TransformerFactoryへの参照を取得すると、ファクトリを使用してtransformerのインスタンスを構成および取得することができます。トラブルシューティングのヒント
jaxp.debugシステム・プロパティを設定すると、このメソッドは実行中の処理や検索している場所に関する大量のデバッグ・メッセージをSystem.errに出力します。問題がある場合、次のようにします。
java -Djaxp.debug=1 YourProgram ....
- パラメータ:
factoryClassName-javax.xml.transform.TransformerFactoryの実装を提供する完全指定のファクトリ・クラス名。classLoader- ファクトリ・クラスのロードに使用されるClassLoader。nullの場合は、現在のThreadのコンテキストclassLoaderが、ファクトリ・クラスのロードに使用されます。- 戻り値:
- 新しいTransformerFactoryインスタンス。nullは不可。
- スロー:
TransformerFactoryConfigurationError-factoryClassNameがnull、またはファクトリ・クラスをロードまたはインスタンス化できない場合。- 導入されたバージョン:
- 1.6
- 関連項目:
-
newTransformer
public abstract Transformer newTransformer(Source source) throws TransformerConfigurationException SourceをTransformerObjectに処理します。Sourceは「XSL Transformations (XSLT) Version 1.0」に適合するXSLTドキュメントです。 このTransformerは並行して動作する複数のThreadで使用することはできません。 異なるTransformerFactoriesは、異なるThreadによって並行して使用できます。- パラメータ:
source-Transformerの作成に使用されるXSLTドキュメントのSource。 XMLSourceの例には、DOMSource、SAXSource、およびStreamSourceが含まれます。- 戻り値:
- 1つの
Threadで変換を実行するために使用されるTransformerオブジェクト。nullは不可。 - スロー:
TransformerConfigurationException-Sourceの構文解析時にエラーが発生するか、Transformerインスタンスを作成できない場合にスローされる。- 関連項目:
-
newTransformer
public abstract Transformer newTransformer() throws TransformerConfigurationExceptionResultへのSourceのコピーを実行する新しいTransformerを作成します、たとえば、"「アイデンティティ変換」"。- 戻り値:
- 1つのスレッドで変換を実行するために使用されるTransformerオブジェクト。nullは不可。
- スロー:
TransformerConfigurationException-Transformerインスタンスを作成できない場合。
-
newTemplates
public abstract Templates newTemplates(Source source) throws TransformerConfigurationException Sourceを処理して、ソースのコンパイル表現であるTemplatesオブジェクトにします。 このTemplatesオブジェクトは、複数のスレッドで並行して使用することができます。 Templatesオブジェクトを作成することにより、TransformerFactoryは変換命令のパフォーマンスの最適化を詳細に行うことができ、実行時変換が低下することはありません。- パラメータ:
source- URL、入力ストリームなどを保持するオブジェクト。- 戻り値:
- 変換のために使用できるTemplatesオブジェクト。
nullは不可。 - スロー:
TransformerConfigurationException- Templatesオブジェクト構築の構文解析に失敗した場合。
-
getAssociatedStylesheet
public abstract Source getAssociatedStylesheet(Source source, String media, String title, String charset) throws TransformerConfigurationException 「The xml-stylesheet processing instruction」から、指定された基準に一致するXMLSourceドキュメントに関連付けられているスタイル・シート仕様を取得します。 いくつかのスタイルシートを返すことができます。その場合、それらのスタイルシートは、1つのスタイルシート内のインポートまたはカスケードのリストであるかのように適用されます。- パラメータ:
source- XMLソース・ドキュメント。media- 一致するメディア属性。 nullの場合、優先テンプレートは(つまり、alternate = no)が使用されます。title- 一致するタイトル属性の値。 nullも可。charset- 一致する文字セット属性の値。 nullも可。- 戻り値:
TransformerFactoryに渡すのに適したSourceObject。- スロー:
TransformerConfigurationException-sourceの構文解析時にエラーが発生した場合Exceptionがスローされる。- 関連項目:
-
setURIResolver
public abstract void setURIResolver(URIResolver resolver) document()、xsl:import、またはxsl:includeで使用されるURIを解決するために変換時にデフォルトで使用されるオブジェクトを設定します。- パラメータ:
resolver- URIResolverインタフェースを実装するオブジェクト、またはnull。
-
getURIResolver
public abstract URIResolver getURIResolver()document()、xsl:import、またはxsl:includeで使用されるURIを解決するために変換時にデフォルトで使用されるオブジェクトを取得します。- 戻り値:
- setURIResolverを使用して設定されたURIResolver。
-
setFeature
public abstract void setFeature(String name, boolean value) throws TransformerConfigurationException このファクトリによって生成された
TransformerFactoryおよびTransformerまたはTemplateの機能を設定します。機能名は完全修飾
URIです。 実装が独自の機能を定義することもできます。 生成するTransformerFactoryまたはTransformerまたはTemplateがその機能をサポートできない場合は、TransformerConfigurationExceptionがスローされます。TransformerFactoryは機能の値を表示できますが、その状態を変更することはできません。実装はすべて、
XMLConstants.FEATURE_SECURE_PROCESSING機能をサポートしている必要があります。 この機能については次のとおりです。-
true: 実装は実装限界に準拠するXML処理を制限し、実装で定義されたとおりのセキュリティ保護された方式で動作します。 例としては、ユーザー定義スタイル・シートや関数の解決などがあります。 セキュリティ上の理由からXML処理が制限される場合は、登録済みのErrorListener.fatalError(TransformerException exception)へ呼出しを介して報告されます。setErrorListener(ErrorListener listener)を参照してください。 -
false: 実装は実装限界に関係なく、XML仕様に従ってXMLを処理します。
- パラメータ:
name- 機能名。value- 機能の状態がtrueかfalseか。- スロー:
TransformerConfigurationException- このTransformerFactoryまたはそれによって作成されるTransformerまたはTemplateがこの機能をサポートできない場合。NullPointerException-nameパラメータがnullである場合。
-
-
getFeature
public abstract boolean getFeature(String name) 機能の値を検索します。機能名は完全修飾
URIです。 実装が独自の機能を定義することもできます。このTransformerFactory、またはそれが生成するTransformerまたはTemplateがその機能をサポートできない場合は、falseが返されます。TransformerFactoryは機能の値を表示できますが、その状態を変更することはできません。- パラメータ:
name- 機能名。- 戻り値:
- 機能の現在の状態。
trueまたはfalse。 - スロー:
NullPointerException-nameパラメータがnullである場合。
-
setAttribute
ユーザーがベースとなる実装に特定の属性を設定できるようにします。 このコンテキストの属性は、実装が提供するオプションとして定義されます。 ベースとなる実装が属性を認識しない場合にIllegalArgumentExceptionがスローされます。JAXP 1.5またはそれ以降を実装する実装はすべて、
XMLConstants.ACCESS_EXTERNAL_DTDおよびXMLConstants.ACCESS_EXTERNAL_STYLESHEETプロパティをサポートしている必要があります。-
ソース・ファイル内の外部DTDへのアクセスが、
XMLConstants.ACCESS_EXTERNAL_DTDプロパティで指定されたプロトコルに制限されます。 このプロパティの制限が原因で変換中にアクセスが拒否された場合は、Transformer.transform(Source, Result)によってTransformerExceptionがスローされます。スタイル・シート内の外部DTDへのアクセスが、
XMLConstants.ACCESS_EXTERNAL_DTDプロパティで指定されたプロトコルに制限されます。 このプロパティの制限が原因で新しいトランスフォーマの作成中にアクセスが拒否された場合は、newTransformer(Source)メソッドによってTransformerConfigurationExceptionがスローされます。スタイル・シートの処理命令、ImportおよびInclude要素によって設定された外部参照へのアクセスが、
XMLConstants.ACCESS_EXTERNAL_STYLESHEETプロパティで指定されたプロトコルに制限されます。 このプロパティの制限が原因で新しいトランスフォーマの作成中にアクセスが拒否された場合は、newTransformer(Source)メソッドによってTransformerConfigurationExceptionがスローされます。XSLTドキュメント関数による外部ドキュメントへのアクセスが、そのプロパティで指定されたプロトコルに制限されます。 このプロパティの制限が原因で変換中にアクセスが拒否された場合は、
Transformer.transform(Source, Result)メソッドによってTransformerExceptionがスローされます。
- パラメータ:
name- 属性の名前。value- 属性の値。- スロー:
IllegalArgumentException- 実装が属性を認識しない場合。
-
-
getAttribute
ユーザーがベースとなる実装の特定の属性を取り出すことができるようにします。 ベースとなる実装が属性を認識しない場合にIllegalArgumentExceptionがスローされます。- パラメータ:
name- 属性の名前。- 戻り値:
- 属性の値。
- スロー:
IllegalArgumentException- 実装が属性を認識しない場合。
-
setErrorListener
public abstract void setErrorListener(ErrorListener listener) TransformerFactoryのエラー・イベント・リスナーを設定します。TransformerFactoryは、変換自体のためではなく、変換命令を処理するために使用されます。ErrorListenerリスナーがnullの場合はIllegalArgumentExceptionがスローされます。- パラメータ:
listener- 新しいエラー・リスナー。- スロー:
IllegalArgumentException-listenerがnullの場合
-
getErrorListener
public abstract ErrorListener getErrorListener()TransformerFactoryのエラー・イベント・ハンドラを取得します。- 戻り値:
- 現在のエラー・ハンドラ。nullは不可。
-