問題タブ [jaxb2]
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.
java - Jaxb: ObjectFactory クラスを生成するにはどうすればよいですか?
Java 6、JaxB 2、および SpringSource Tool Suite (Eclipse と同じ) を使用しています。私が作成した Java クラスがいくつかあり、そこから JaxB を使用して XML スキーマを生成しました。しかし、Java オブジェクトから XML ドキュメントを生成する JaxB の機能を使用するには、ObjectFactory が必要であることに気付きました。
現在既に持っているクラスを吹き飛ばすことなく ObjectFactory を生成するにはどうすればよいですか?
java - JAXB が Spring の ApplicationContext をバインドしようとするのはなぜですか?
私は、JAX-WS Web サービスを公開する Spring アプリケーションに取り組んでいます。Web サービスの実装は、サービス レイヤー内のいくつかのスプリング管理オブジェクトに依存しており、次のようになります。
whereはアプリケーション コンテキストで定義され、 webapp の起動時にFooService
挿入されます。その部分は、アプリケーションコンテキストで再度定義され、起動時に注入される に依存します。したがって、上記は推移的に に依存します。BlahService
FooService
BarService
BlahService
BarService
これが彼のトリッキーな部分です。BarService
を実装ApplicationContextAware
しているため、そのコードは通常のコードに似ています
注釈を付けない限りsetApplicationContext
、@XmlTransient
アプリケーションは起動せず、インターフェイスであることに不満を持ってapplicationContext
いるため、JAXB にバインドできません。私は何が欠けていますか?JAXBApplicationContext
が XML にバインドしようとするのはなぜですか?
スタックトレースまたはそれが起こらなかった
maven-2 - mavenjaxb2プラグイン-jwsdpの依存関係を回避できますか
セットのJAXBJavaソースファイルを自動生成するMavenビルドがあります。基本的な設定は
'maven clean package'を実行すると、ソースファイルは正しく生成されますが、プロセスはこれらのjarファイルのダウンロードを試みます。Maven JAXBプラグインページに概説されている手順から必要なjarを手動でインストールできることはわかっていますが、SunWebサービスのjar依存関係を回避する別の方法があるのではないかと思います。JAXPまたはMavenプラグインに異なるバージョンを使用する必要がありますか?
java - ノードに内部ノードもある場合、ノードの値をマップする方法はありますか?
私は現在、ほとんどの場合にうまく機能する JAXB アノテーションを使用しています。ただし、注釈を処理/作成する方法がわかりません。次の XML があります。
" " または " "cat
を取得せずにその XML から" " を取得する方法はありますか?5
red
これが私がこれまでに持っているものです:
しかし、これを非整列化すると、空の文字列が得られます。
どんな助けでも大歓迎です!
編集
これは、私がやろうとしていることの完全な実例です:
binding - 内部クラスの作成または xs:element の getter/setter を強制するカスタム バインディング
サードパーティ プロバイダーから次のようなスキーマ宣言があります。
上記は変更できないスキーマです。JavaコードでGroupParameterType.NameまたはGroupParameterType.Valueとして名前を参照できるように、jaxb 2.0のカスタムバインディングを作成しようとしています。
現在のデフォルト バインディングは、getNameandValueList などのリストを生成しますが、名前と値にそれぞれ個別のゲッターとセッターが必要です。
次のようなカスタムバインディングを入れてみました:
デフォルトのクラス生成を変更することは何もしませんでした。他に何を試すことができるので、誰かが私にいくつかの指針を与えることができますか? 名前と値のゲッター/セッターと一緒にデフォルトのリスト生成を行うか、名前と値を内部クラスとして持つことを探しています。maxOccurs=4 オプションを削除すると、ゲッター/セッターを生成できますが、スキーマを変更できないため、外部バインディング ファイルを使用してその動作を取得しようとしています。
ありがとう
spring-ws - Maven-JAXB2 0.7.5プラグインを使用したSAXParseException、Maven 3のみ
Maven 3 を使用すると、maven-jaxb2-plugin (バージョン 0.7.5) に問題があるようです。Maven 2.2.x を使用すると問題は発生せず、Maven 3 にアップグレードしたときにのみ問題になりました。
以下は、mvn clean test を実行した後の maven 出力です。
ただし、Maven 2 を使用すると、テストは正常に実行されます。Maven 3 と JAXB2 の間に既知の問題がないかオンラインでリソースを検索しましたが、リソースが見つかりませんでした。Maven 2 または Maven 3 を使用したビルドの有効な POM は同じです。
ちなみに、以前は Maven 3 で maven-jaxb2-plugin を問題なく使用できました。ただし、このビルドは、XSD が依存 JAR にあるという点で特別なので、構成の問題である可能性があります。しかし、POM またはバインディングで設定する必要がある構成がわかりません。
この問題を解決するために使用できるリソース、または実行できる解決手順はありますか? どうもありがとう!
java - JAXB2 の基本 Mergeable プラグイン: カスタムの Merge Strategy の設定
次のように、ant スクリプトで JAXB2 Basics 'Mergeable' プラグインを正常にアクティブ化しました。
それは機能しており、生成されたクラスに「MergeFrom」インターフェースを正しく追加しています。
私の問題は、'mergeStrategyClass' 引数を使用してカスタム マージ戦略を指定しようとするたびに、'MergeFrom' インターフェイスが生成されたクラスから完全に消えてしまうことです。私が使用している構文は次のとおりです。
これは、JAXB2 Basics Web サイトの例から直接引用したものです。(意図的にクラスのスペルを間違えると、ClassNotFoundExceptionが発生するため、クラスパスは問題ないようです)
Ant ビルドによってスローされるエラーはなく、欠落しているインターフェイスを除いて、クラスは正常に生成されます。
spring - Spring AOP Logging Interceptor と JAXB の問題
アプリケーションにロギングの側面を実装しようとしています。AOP を試すのはこれが初めてなので、明らかな何かが欠けている場合はお知らせください。外部jarを織り込むために、ロードタイムウィーバーを実装しようとしています。アプリケーション コンテキストで load-time-weaver を指定し、aop.xml とともに context.xml ファイルで TomcatInstrumentableClassLoader について言及しました。私のアプリケーションは Spring MVC REST アプリケーションであり、JAXB コンテンツ ネゴシエーションも利用しています。アプリケーションの起動中、前述のクラスから JAXBContext を構築しているときに、JAXB は null ポインター例外でエラーになります。ただし、TomcatInstrumentableClassLoader がないと、JAXBContext は正常に初期化され、すべて正常に動作します。ただし、TomcatInstrumentableClassLoader のロード時間なしではウィービングは機能しません。この問題を解決するためにできることはありますか? どんな助けでも大歓迎です。
私のアプリのコンテキスト:
ここに私のcontext.xmlがあります:
私の aop.xml:
スタック トレースは次のとおりです。
java - JAXBはHashMapプロパティを無視しますか?
J2SEに付属するJAXB実装を使用して、HashMapプロパティを含むBeanをシリアル化します。これは次のように述べているので、これは箱から出してすぐに機能するはずだと思います
JAXB仕様は、Beanのプロパティとして使用される場合のMapの特別な処理を定義します。たとえば、次のBeanは、次のようなXMLを生成します。
これは、構造に複数のレベルがない限り、多かれ少なかれ機能します。つまり、HashMapはBeanのプロパティであるBeanのプロパティであり、次のようになります。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?><b2><b><map/></b></b2>
これにより、正しくフォーマットされたHashMapの代わりに出力
されます。に注釈を付けbean
てfrom@XmlRootElement
を削除すると機能しますが、なぜそれが必要なのかわかりません。そんなはずなの?@XmlElement
map