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

クラスSchemaOutputResolver



  • public abstract class SchemaOutputResolver
    extends Object
    JAXB実装が生成されたスキーマ・ファイルをどこに置くかを制御します。

    このabstractクラスの実装は、スキーマを生成するアプリケーションを呼び出すことによって提供される必要があります。

    互換性を損なうことなく将来のバージョンを発展させることができるようにするため、これはインタフェースではなくクラスになっています。

    導入されたバージョン:
    1.6
    • コンストラクタの詳細

      • SchemaOutputResolver

        public SchemaOutputResolver​()
    • メソッドの詳細

      • createOutput

        public abstract Result createOutput​(String namespaceUri,
                                            String suggestedFileName)
                                     throws IOException
        (指定された名前空間URIの)スキーマ・ファイルが書き込まれる場所を判断し、Resultオブジェクトとして返します。

        このメソッドは、指定の名前空間に対し1度だけ呼び出されます。 つまり、常に1つの名前空間内のすべてのコンポーネントが同じスキーマ文書内に書き込まれます。

        パラメータ:
        namespaceUri - スキーマが宣言する名前空間URI。 空の文字列でもよいが、nullは不可。
        suggestedFileName - JAXB実装では、呼び出される側の便宜を図って一意のファイル名(「schema1.xsd」など)を生成する。 この名前はスキーマのファイル名として使用できるが、呼び出される側はこの名前を無視し、独自の名前を考案することもできる。 これは単にヒントである。
        戻り値:
        スキーマの実際の宛先をカプセル化するResultオブジェクト。 ResultオブジェクトにシステムIDがある場合、それは絶対システムIDである必要があります。 これらのシステムIDは、呼出し側によって相対化され、<xs:import>文に使用されます。 ResultオブジェクトにシステムIDがない場合、名前空間URIのスキーマは生成されますが、明示的にほかのスキーマから<xs:import>を行えません。 nullが返された場合、この名前空間URIのスキーマ生成はスキップされます。
        例外:
        IOException