問題タブ [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.
constructor - JAXB値コンストラクターでの属性順序の強制
Maven jaxb2プラグインを使用して、生成されたJAXBクラスのデフォルト値コンストラクターを生成しています。私が抱えている問題は、属性/フィールドの順序がへの呼び出しごとにgenerate-sources
変わることです。これにより、生成されたコンストラクターが変わります。
属性は、スキーマで3つの属性グループのコレクションとして定義されます。
各サブグループ内の属性(たとえば、AttributeGroupA)は常に同じ順序になりますが、サブグループの順序は呼び出しごとに変わるようです。これにより、フィールドの順序が保証されないため、コンストラクターが使用できなくなり、新しいビルドごとに既存のコードが破損する可能性があります。
属性/フィールドの順序を強制する方法についてのアイデアはありますか?
xml - この文脈で知られている
私の Java RESTful Web サービス (Spring 3.1.1 および CXF 2.5.2) は、要求ごとに stdout に出力します
時には複数回。例外がスローされないこと、またはエラーに関してメッセージがログに記録されないことに注意してください。問題のクラスは、他の定義も含む XSD から maven-jaxb2-plugin によって生成されます。データ型を定義するために使用される要素は
そのようにコンパイルしたXSDがいくつかありますが、エラーメッセージに関連付けられているのはクラスXだけです。生成されたクラスには注釈があります
この問題を修正してエラー メッセージを表示しないようにするにはどうすればよいですか?
java - Maven JAXB2 XJCプラグイン:M2Eプラグインの実行はカバーされていません
jaxb2 xjc
プラグインを使用して、からJavaファイルを生成していXSD
ます。したがって、私はpom.xmlを次のように構成していました。
開発環境をEclipseIndigoに変更しましたが、これは機能しなくなりました。エラーには、「プラグインの実行はライフサイクル構成でカバーされていません」と表示されます。新しい環境でプラグインが機能するように、プラグインの実行を別の方法で定義する必要があることを理解しています。
このページの指示に従いましたが、M2Eプラグインの実行については説明していませんgenerate-sources
が、フェーズの実行時にソースファイルが生成されません。
ファイルが適切に生成されるように、pomを正確にリファクタリングする方法を教えてもらえますか?
助けてくれてありがとう!
jaxb - JAXB maven プラグイン ObjectFactory クラスで 2 つの宣言が衝突を引き起こす
jaxb maven プラグインを使用して、スキーマからクラスを生成しています。3 つの Maven モジュールに分かれている 3 つのスキーマがあります。
a.jar のスキーマ A
b.jar のスキーマ B
a.jar と c.jar をインポートして使用する c.jar のスキーマ C。
A & B には、同じ名前と同じ型の宣言がいくつかあります。
C クラスの生成時にエラーが発生する
誰かがそれを解決するアイデアを持っていますか?
前もって感謝します。
java - JAXB XmlAnyElement は名前空間属性を設定します
私はJAXBで注釈を付けている単純なJavaクラスを持っています:
これにより、次のスキーマが生成されます。
要素の名前空間属性を設定して、次の<any>
ように生成する方法はありますか?
java - CXF/JAXB2 を使用した equals/hashcode メソッドの生成とカスタマイズ
2 つのクラスがA
あり、WSDL からB
生成されます。から継承します。cxf-codegen-plugin
A
B
hashCode()
、などの一般的なメソッドを追加したいequals()
ので、POMに次の構成があります。
2 つの質問があります。
equals()
のプロパティを比較しないB
(つまり、 を呼び出さない) メソッドを生成する方法はありsuper.equals()
ますか?equals()
指定した特定のプロパティのみを比較するメソッドを生成するようにプラグインに指示する方法A
(デフォルトでは、すべてのプロパティが比較されるようです)。
ありがとう
maven-2 - Maven での同じプロジェクトの maven-jaxb2-plugin エピソードはありますか?
私はbasic.xsd
と 2 つの他のA.xsd
とを持っていB.xsd
ます。A.xsd
2 つの異なる Java パッケージにB.xsd
変換されるため、同じプラグインの 2 つの Maven 実行が必要です。
両方の XSD はbasic.xsd
、一部の共有クラスを参照します。別のプロジェクトから来る場合は、クラスの重複を防ぐためにbasic.xsd
使用することで、この問題をうまく解決できます。episodes
しかし、どうすれば現在のプロジェクトを参照できますか?
プラグインの最初の実行は、クラスのみをbasic.xsd
独自の Java 名前空間に生成することです。その後、 と の実行はから生成されたものについて知る必要がA.xsd
あります。B.xsd
basic.xsd
の生成されたエピソードをどうにか指摘できますbasic.xsd
か?
みたいな
<episodes><episodeFile>basicXSD.episode</episodeFile</episodes>
いいでしょうが、私が見る限り、依存関係を追加することしかできません... :-(
java - Jaxb 2 Maven Plugin - maven に XSD 名前空間を尊重させる方法は?
Maven用のjaxb2プラグインに関して質問があります。XSD スキーマからソースを生成したい。通常、コマンド ラインから xjc を実行すると、xjc は名前空間に従ってすべてのソースを生成します ( core :AccountType からcore /AccountType.java など)。
一部のMavenプラグインを使用して同じ機能を使用したいのですが、すべてのJavaクラスを1つのディレクトリに作成するため、重複の競合が発生します。Maven をコマンドライン xjc コマンドと同じように動作させるためのフラグ、プラグイン、機能などはありますか? 私はmavenで以下のコードを使用しています:
java - xsd から永続マッピングを使用して Bean を生成する方法は?
そのような質問をしたいのですが、私は org.jvnet.jaxb2.maven2 で Bean を生成する XML xsd を持っていますが、これらの Bean に java.persistence マッピングを追加する必要があります。
最良の方法はどれですか?
xsd の例を次に示します。
そしてここでそれが生成するもの:
そして、次のようなものを生成する必要があります。
私の質問を拡張するには: 私たちが理解したように、HyperJaxb を使用できますが、誰かが pom ファイルを構成する方法を教えてくれるので、これらの注釈が生成されますか?
namespaces - 整列化された xml で JAXB Impl が誤った名前空間を生成する
JAXB を使用して、定義されたスキーマに基づいて xml ドキュメントをマーシャリング/アンマーシャリングしています。私が気付いているのは、マーシャリングされた xml で JAXB が誤った名前空間を生成していることです。
詳細はこちら-
soap.xsd -->
schema1.xsd -->
schema2.xsd -->
jaxbMarshaller の namespacePrefixMapperImpl を (Spring 構成で) 定義しました。これは、URI を定義済みのプレフィックス名にマップします。
整列化された応答 xml は次のようになります。JAXB が名前空間の接頭辞を間違えていることに注意してください。JAXB は、svc プレフィックスの代わりに、detailsResponse 複合型に soapenv 名前空間を使用しています。次に、osa プレフィックスの代わりに、responseHeader 複合型に svc プレフィックスを使用しています。一部の要素は文字列型であるため、プレフィックスを付けないでください (つまり、デフォルトの名前空間)。等々...
どこで私は間違えましたか?それとも、これは jaxb-impl の問題ですか。
生成された XML -->
スキーマから JAXB クラスを生成するために使用しているプラグインは、pom.xml で次のように定義されています。