2012-02-24 5 views
0

xmlスキーマの異なる名前空間を別のパッケージにマップする必要があるという要件があります。パッケージ名はnamespaceと異なるはずです。したがって、XMLスキーマにhttp://sampl.com/firtNamespacehttp://sampl.com/secondnamesapceの2つの名前空間が定義されている場合は、それらをパッケージにマップする必要があります(例:com.myexample.fn1com.myexample.simpleapp)。xmlスキーマ内の異なる名前空間を別のクラスにマップする方法

これはjaxbバインディングファイルでは実現できますが、具体的な例はありません。

ありがとうございました。

答えて

0

pakcage-info.javaファイルの@XmlSchema注釈を使用すると、パッケージごとにxml名前空間を定義できます。

+0

[OK]をクリックします。クラスを生成していない場合はどうすればよいですか。私はXMLスキーマファイルだけです。私はxjcのようなツールを使ってクラスを生成しています。だから、クラス生成レベルで名前空間 - パッケージマッピングを定義したいと思います。 – Gaurav

+0

他の回答を読んで、jaxbバインディングファイルを使用してください。 – tom

0

これは、外部のJAXBバインディングファイルを使用して行うことができます。 JaXb docs

0

私はMaven 2 JAXB 2.xプラグインを使用して、hereを見つけることができます。このプラグインは、XSDファイルに基づいてJAXBクラスを作成します。あなたのWSDLが、異なる名前空間を持つ2つの異なるスキーマ(つまり、2つのXSDファイルを抽出できる)で構成されている場合、クラスは名前空間に従って2つの異なるパッケージに生成されます。プラグインを使用すると、2つのスキーマクラスを同じディレクトリに作成して、ターゲットパッケージを示すよう強制することもできますが、それは注意しているものではなく、そのオプションを使用しないでください。

関連する問題