問題タブ [maven-jaxb2-plugin]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
418 参照

jaxb - jaxb2 maven プラグインを使用して @TABLE タグを生成する方法

こんにちは、いくつかのチュートリアルに従って、次のようなスキーマを作成しました。

以下を生成します。

私はこのようなものが欲しかった:

だから私が欲しかったのは、基本的にはハードコーディングされたものは何でも選択するテーブル名ですが、クラス名またはクラスオブジェクト名を表示したかったのです。

0 投票する
1 に答える
580 参照

java - それぞれ別のmavenモジュールに複数のスキーマがあるJAXBを使用してXmlを解析する

私は現在、Maven JAXB プラグインに非常に複雑な Xml スキーマのセットのモデルを生成させることに取り組んでいます。すべてのスキーマが 1 つの Maven モジュールにあることから始めました。結果のモジュールは、その言語のドキュメントを解析できました。残念ながら、そのスキーマとモデルを別のモジュールにインポートする必要があったため、この 1 つのモジュールをいくつかのモジュールに分割する必要がありました。マルチスキーマ モジュールの場合、エピソード ファイルに問題があるようです。

たとえば、xml 形式の一般的な構造を定義し、基本的な型を定義する 1 つのスキーマがあります (それを A と呼びましょう)。現在、これらの基本型のサブタイプをそれぞれ実装する他のスキーマがいくつかあります (それらの 1 つを B と呼びましょう)。

B が A を拡張するようにモジュールを作成しました。残念ながら、ドキュメントを解析できなくなったようです。モジュール B で、A の ObjctFactory が作成され、B が A から拡張するすべての型の定義のみが含まれていることがわかります。他のすべての型はもう存在しません。

この ObjectFactory が存在する限り、ルート要素の定義が欠落しているため、何も解析できません。これを削除すると、B で定義されたすべての要素が結果のオブジェクト ツリーから失われます。

モジュール内の元の ObjectFactory をすべてのスキーマと比較すると、最初のバージョンには、どの要素が来る可能性があるかをパーサーに伝えるような「代替手段」が大量にあることがわかりました。分割バージョンではこれらが欠落しているため、B の部分的な ObjectFactory を削除すると、A の ObjectFactory が使用され、これは B の要素を認識しないと思います。

では、JAXB に A と B のすべての要素を解析させるにはどうすればよいでしょうか。ObjectFactory を拡張する方法はありますか? はいの場合、これはどのように行われますか?

次に問題を引き起こす可能性があるのは、A を拡張するスキーマがいくつかあるため、A、B、C、D、および E を含むドキュメントがあり、B、C、D、および E はすべて A を拡張しますが、それぞれにはまったく関係がないことです。他の。その場合、延長はオプションではないと思います。

0 投票する
0 に答える
591 参照

java - xjc によって生成されたコードでのコンパイラ警告の回避

私の根本的な質問は、「チェックされていないジェネリック タイプ」の Eclipse コンパイラの警告の恩恵を受ける方法ですが、xjc (maven-jaxb2-プラグイン。)

ソースフォルダーごとにコンパイラの警告を無視できる他の場所を読みましたが、それは素晴らしいことですが、生成されたコードを独自のソースフォルダーに配置する権限がありません。:(

私の状況を考えると、これを行うための最も簡単で耐久性のある方法は、jaxb バインディング ファイル (.xjb) を使用して、jaxb が生成するすべてのクラスのクラス レベルで @SuppressWarnings を追加することだと思います。ただし、私は xjc の使用についてあまり賢くありません。.xsd ファイルから .java ファイルを生成するために it/maven/eclipse がどのように接続されているかを確認するだけです。したがって、これは2つの質問につながります。まず、これが可能/簡単だと思うのは間違っていますか? 第二に、それが簡単な場合、これを達成するための良い方法は何ですか?

0 投票する
1 に答える
869 参照

xsd - JAXB 2 Maven プラグイン - エピソードの使用 - xsd の一般的なプロジェクト

名前空間 a とパッケージ a を使用して、いくつかの一般的に使用される XML スキーマ ファイルと、生成されたクラス (jaxb から生成された) に依存するいくつかの Java クラスを含むプロジェクト A が必要であり、プロジェクト A に依存するプロジェクト B が必要です。

プロジェクト B では、プロジェクト A のいくつかの XML 型を使用する XML スキーマ ファイルが必要です。プロジェクト b には名前空間 b があり、JAXB はスキーマ b からパッケージ b に Java クラスを生成する必要があります。

エピソードとカタログが役立つことはわかっていますが、jaxb がスキーマ a から来る Java クラスをプロジェクト b で 2 回作成するのを防ぐことはできません。

ここに私のmaven構成があります:

プロジェクトA:

プロジェクト B :

b.xsd

0 投票する
1 に答える
749 参照

jaxb - アンマーシャリング時に空の要素をnullに変換するJaxB

次のような WSDl 要素があります。

次のようなlistElementの空の要素を送信した場合のSOAPリクエストで:

次に、JaxBは次のようなものを作成しています:

だから私は listElement をテストオブジェクトで配列された単一のものとして取得しています。

空の要素が渡されたときに listElement を Null に設定できる何かをしたいです。これは最初にコントラクトであり、すべての入力オブジェクトが生成されるため、@XMLJavaAdapter アノテーションを使用できません。

WSDL レベルまたは世代レベルで何らかのバインディングを追加する必要があります。

ヘルプは非常に高く評価されますか?

0 投票する
2 に答える
2267 参照

maven - Add explicit source directory in jaxb2-maven-plugin for schemagen

I would like to generate schema from JAXB annotated classes. For this, I am using jaxb2-maven-plugin. The plugin by default scans src/main/java folder for included sources. I would like to specify an extra folder to scan for java classes which is not maven source path.

Can anyone please help?

#xA;