モジュール java.xml
パッケージ javax.xml.transform

クラスTransformerFactory

java.lang.Object
javax.xml.transform.TransformerFactory
直系の既知のサブクラス:
SAXTransformerFactory

public abstract class TransformerFactory extends Object

TransformerFactoryインスタンスを使用して、TransformerおよびTemplatesオブジェクトを作成できます。

どのファクトリ実装を作成するかを決めるシステム・プロパティの名前は"javax.xml.transform.TransformerFactory"です。 このプロパティは、TransformerFactory abstractクラスの具象サブクラスを命名します。 このプロパティが定義されていない場合は、プラットフォームのデフォルトが使用されます。

導入されたバージョン:
1.5
  • コンストラクタのサマリー

    コンストラクタ
    修飾子
    コンストラクタ
    説明
    protected
    デフォルトのコンストラクタが意図的に保護されます。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    abstract Source
    getAssociatedStylesheet(Source source, String media, String title, String charset)
    The xml-stylesheet processing instruction」から、指定された基準に一致するXML Sourceドキュメントに関連付けられているスタイル・シート仕様を取得します。
    abstract Object
    ユーザーがベースとなる実装の特定の属性を取り出すことができるようにします。
    abstract ErrorListener
    TransformerFactoryのエラー・イベント・ハンドラを取得します。
    abstract boolean
    機能の値を検索します。
    abstract URIResolver
    document()、xsl:import、またはxsl:includeで使用されるURIを解決するために変換時にデフォルトで使用されるオブジェクトを取得します。
    TransformerFactory組み込みシステムのデフォルト実装の新しいインスタンスを作成します。
    TransformerFactoryの新しいインスタンスを取得します。
    newInstance(String factoryClassName, ClassLoader classLoader)
    ファクトリ・クラス名からTransformerFactoryの新しいインスタンスを取得します。
    abstract Templates
    Sourceを処理して、ソースのコンパイル表現であるTemplatesオブジェクトにします。
    abstract Transformer
    ResultへのSourceのコピーを実行する新しいTransformerを作成します、たとえば、"「アイデンティティ変換」"。
    abstract Transformer
    SourceTransformer Objectに処理します。
    abstract void
    setAttribute(String name, Object value)
    ユーザーがベースとなる実装に特定の属性を設定できるようにします。
    abstract void
    TransformerFactoryのエラー・イベント・リスナーを設定します。TransformerFactoryは、変換自体のためではなく、変換命令を処理するために使用されます。
    abstract void
    setFeature(String name, boolean value)
    このファクトリによって生成されたTransformerFactoryおよびTransformerまたはTemplateの機能を設定します。
    abstract void
    document()、xsl:import、またはxsl:includeで使用されるURIを解決するために変換時にデフォルトで使用されるオブジェクトを設定します。

    クラス java.lang.Objectで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • コンストラクタの詳細

    • TransformerFactory

      protected TransformerFactory()
      デフォルトのコンストラクタが意図的に保護されます。
  • メソッドの詳細

    • newDefaultInstance

      public static TransformerFactory newDefaultInstance()
      TransformerFactory組み込みシステムのデフォルト実装の新しいインスタンスを作成します。
      戻り値:
      TransformerFactory組み込みシステムのデフォルト実装の新しいインスタンス。
      導入されたバージョン:
      9
    • newInstance

      public static TransformerFactory newInstance() throws TransformerFactoryConfigurationError
      TransformerFactoryの新しいインスタンスを取得します。 このメソッドは、「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 - factoryClassNamenull、またはファクトリ・クラスをロードまたはインスタンス化できない場合。
      導入されたバージョン:
      1.6
      関連項目:
    • newTransformer

      public abstract Transformer newTransformer(Source source) throws TransformerConfigurationException
      SourceTransformer Objectに処理します。 Source「XSL Transformations (XSLT) Version 1.0」に適合するXSLTドキュメントです。 このTransformerは並行して動作する複数のThreadで使用することはできません。 異なるTransformerFactoriesは、異なるThreadによって並行して使用できます。
      パラメータ:
      source - Transformerの作成に使用されるXSLTドキュメントのSource XML Sourceの例には、DOMSourceSAXSource、およびStreamSourceが含まれます。
      戻り値:
      1つのThreadで変換を実行するために使用されるTransformerオブジェクト。nullは不可。
      例外:
      TransformerConfigurationException - Sourceの構文解析時にエラーが発生するか、Transformerインスタンスを作成できない場合にスローされる。
      関連項目:
    • newTransformer

      public abstract Transformer newTransformer() throws TransformerConfigurationException
      Resultへの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」から、指定された基準に一致するXML Sourceドキュメントに関連付けられているスタイル・シート仕様を取得します。 いくつかのスタイルシートを返すことができます。その場合、それらのスタイルシートは、1つのスタイルシート内のインポートまたはカスケードのリストであるかのように適用されます。
      パラメータ:
      source - XMLソース・ドキュメント。
      media - 一致するメディア属性。 nullの場合があり、その場合、設定されているテンプレートが使用される(つまりalternate = no)。
      title - 一致するタイトル属性の値。 nullも可。
      charset - 一致する文字セット属性の値。 nullも可。
      戻り値:
      TransformerFactoryに渡すのに適したSource Object
      例外:
      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 - 機能の状態がtruefalseか。
      例外:
      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

      public abstract void setAttribute(String name, Object value)
      ユーザーがベースとなる実装に特定の属性を設定できるようにします。 このコンテキストの属性は、実装が提供するオプションとして定義されます。 ベースとなる実装が属性を認識しない場合にIllegalArgumentExceptionがスローされます。

      JAXP 1.5またはそれ以降を実装する実装はすべて、XMLConstants.ACCESS_EXTERNAL_DTDおよびXMLConstants.ACCESS_EXTERNAL_STYLESHEETプロパティをサポートしている必要があります。

      パラメータ:
      name - 属性の名前。
      value - 属性の値。
      例外:
      IllegalArgumentException - 実装が属性を認識しない場合。
    • getAttribute

      public abstract Object getAttribute(String name)
      ユーザーがベースとなる実装の特定の属性を取り出すことができるようにします。 ベースとなる実装が属性を認識しない場合にIllegalArgumentExceptionがスローされます。
      パラメータ:
      name - 属性の名前。
      戻り値:
      属性の値。
      例外:
      IllegalArgumentException - 実装が属性を認識しない場合。
    • setErrorListener

      public abstract void setErrorListener(ErrorListener listener)
      TransformerFactoryのエラー・イベント・リスナーを設定します。TransformerFactoryは、変換自体のためではなく、変換命令を処理するために使用されます。 ErrorListenerリスナーがnullの場合はIllegalArgumentExceptionがスローされます。
      パラメータ:
      listener - 新しいエラー・リスナー。
      例外:
      IllegalArgumentException - listenernullの場合
    • getErrorListener

      public abstract ErrorListener getErrorListener()
      TransformerFactoryのエラー・イベント・ハンドラを取得します。
      戻り値:
      現在のエラー・ハンドラ。nullは不可。