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

インタフェースJAXBContextFactory


  • public interface JAXBContextFactory

    新しいJAXBContextインスタンスを作成するファクトリ。 JAXBContextFactoryはServiceLoader.load(Class)を使用して見つけることができます

    導入されたバージョン:
    9, JAXB 2.3
    • メソッドの詳細

      • createContext

        JAXBContext createContext​(Class<?>[] classesToBeBound,
                                  Map<String,?> properties)
                           throws JAXBException

        JAXBContextクラスの新しいインスタンスを作成します。

        セマンティクスについては、JAXBContext.newInstance(Class[], java.util.Map)を参照してください。

        パラメータ:
        classesToBeBound - 新しいJAXBContextによって認識されるJavaクラスのリスト。 名前付きモジュールにあるclassesToBeBoundのクラスは、openから少なくともjava.xml.bindモジュールまでのパッケージ内になければなりません。 空でもよいが、その場合は仕様定義済みクラスだけを認識しているJAXBContextが返される。
        properties - プロバイダ固有のプロパティ。 nullでもよいが、空マップで渡す場合と同じことを意味する。
        戻り値:
        JAXBContextの新しいインスタンス。
        例外:
        JAXBException - JAXBContextの作成中に次のようなエラーが発生した場合(ただし、これらに限定されない)。
        1. JAXB実装が検出されない
        2. クラスがJAXB注釈を誤って使用している
        3. クラス間に重複する注釈がある(たとえば、同じ型名を持つ2つのクラス)
        4. JAXB実装がプロバイダ固有の帯域外情報を見つけられない場合(開発時に生成された追加ファイルなど)
        5. classesToBeBoundjava.xml.bindモジュールに対してオープンしていません
        IllegalArgumentException - パラメータにnullが含まれる場合(つまり、newInstance(null,someMap);)
        導入されたバージョン:
        9, JAXB 2.3
      • createContext

        JAXBContext createContext​(String contextPath,
                                  ClassLoader classLoader,
                                  Map<String,?> properties)
                           throws JAXBException

        JAXBContextクラスの新しいインスタンスを作成します。

        セマンティクスについては、JAXBContext.newInstance(String, ClassLoader, java.util.Map)を参照してください。

        プロパティの解釈は、実装に委ねられます。 実装は、理解できないプロパティを検出した場合は、JAXBExceptionをスローする必要があります。

        パラメータ:
        contextPath - スキーマ派生クラスを含むJavaパッケージ名のリスト。 名前付きモジュールにあるclassesToBeBoundのクラスは、openから少なくともjava.xml.bindモジュールまでのパッケージ内になければなりません。
        classLoader - このクラス・ローダーが実装クラスの場所の特定に使用される。
        properties - プロバイダ固有のプロパティ。 nullでもよいが、空マップで渡す場合と同じことを意味する。
        戻り値:
        JAXBContextの新しいインスタンス
        例外:
        JAXBException - JAXBContextの作成中に次のようなエラーが発生した場合
        1. パッケージ内でObjectFactory.classまたはjaxb.indexが見つからない
        2. contextPathに含まれるグローバル要素間であいまいさがある
        3. コンテキスト・ファクトリ・プロバイダ・プロパティの値が見つからない
        4. 同じcontextPathに異なるプロバイダからのスキーマ派生パッケージが混在している
        5. パッケージがjava.xml.bindモジュールに対してオープンしていない
        導入されたバージョン:
        9, JAXB 2.3