問題タブ [xjc]
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 - JDO で xjc によって生成されたクラスを使用する方法
xjc によって作成された POJO のコレクションがあり、JDO を介して保持できるようにする必要があります。生成されたクラスに JDO アノテーションをどのように適用しますか?
java - JAXB XJC-XPath評価の結果、ターゲットノードが空になりますか?
次の簡単なXSDドキュメント(foo.xsd)があります。
そして、XJC JAXBコンパイラに、「Height」要素が外部バインディングファイルを使用してタイプセーフな列挙型クラスを使用する必要があることを示唆したいと思います(foo.xjb):
しかし、コマンド " xjc -b foo.xjb foo.xsd"を実行すると、次のエラーが発生します。
XPath式は私には問題ないように見えるので、XML名前空間に関連する微妙な問題があると思いますか?デフォルトの名前空間、targetNamespaceなどを使用する(または使用しない)いくつかの組み合わせを試しましたが、常に同じエラーが発生します。xjc予想どおり、外部バインディングファイルを使用せずに、XSDファイルのJavaソースを単独で生成することに注意してください。同様に、XSDファイルに埋め込まれたバインディング定義を使用すると、期待どおりに機能します。
MacOS10.6.8でJavaバージョン「1.6.0_26」とxjcバージョン「JAXB2.1.10inJDK6」を使用していることに注意してください。
誰かが元のXSDを変更せずにこの目標を達成する方法を説明できますか?
xsd - int の代わりに整数を生成する XJC
次のスキーマはint、クラスに 2 つのプリミティブ フィールドを生成Valueする必要がありますが、代わりintに要素のプリミティブと属性のjava.lang.Integerを生成します。
属性と要素が異なる方法で生成される可能性があると述べているものについて、 JAXB のドキュメントを調べましたが、何も見つかりませんでした。
誰でもこれを説明できますか?属性をプリミティブとして生成するための修正はありますintか?
java - JAXBで生成されたpackage-info.javaとは何ですか
JAXBxjcコマンドラインアプリpackage-info.javaによって生成されたファイルが実際に何をするかについての情報を見つけようとしています。ファイルにあるのは
このpackage-info.javaファイルは何に使用されますか?
jaxb - Jaxbで生成されたクラスの動作を拡張して追加/オーバーライドする
xmlデータで応答するWebサーバーと、それを消費するクライアントがあります。どちらも同じドメインコードを共有しています。ドメインオブジェクトの1つは次のようになります。
サーバーからこのオブジェクトへの応答をアンマーシャリングしようとすると、absoluteUriのセッターがないため、クラスにimageUriがありません。だから私はそれを次のように拡張します:
私のObjectFactory
マーシャリングを解除するための私のコードはここにあります:
ただし、アンマーシャリング中setAbsoluteUriには呼び出されていないようです。FEImageにダミーを追加するsetAbsoluteUriとImage.java、すべてが期待どおりに機能します。
誰かが私にきれいに拡張する方法を教えてもらえますかImage.java?
java - Java: JAXB: JAXBElement のマーシェリングto xs:日付が正しくありません
JAXB の使用に問題があります。xjc (xsd-schema を使用) を介して Java クラスを作成し、XML データ型 xs:date xs:dateTime および xs:time のグローバル バインディングを java.util.Calendar に解析および印刷メソッドで設定しました。
一部の xs:date フィールドを nillable としてマークするまで、すべて正常に動作します。xjc は、これらのプロパティの JAXBElement ラッパーを作成します。これらのフィールドがアンマーシャリングされると、検証エラーにつながる時刻情報を含む日付が出力されます。
マーシャラーに強制的に xs:dateTime ではなく xs:date に変換させる可能性はありますか?
それらのフィールドを変換する特別な XMLAdapter e を取得するこれらのフィールドのバインディングを指定できますか?
Java-Class 内のプロパティは次のようになります。
対応する xsd-look は次のようになります
誰か助けてくれませんか?
よろしくお願いします、
アルネ
java - WSDL から生成された Java クラスにインターフェースを実装させる方法
メインの wsdl には、一連の wsdl インポートがあります。各サブ wsdl は common.xsd をインポートし、特定の操作の要求および応答オブジェクトを定義します。
各サブ wsdl ドキュメントのリクエスト オブジェクトで共通のインターフェイスを実装する必要があります。
まずは xsd:extension を使ってみて、共通要素を基底クラスに抽出してみました。これは機能しますが、公開されている wsdl を変更するので、私はそうしたくありません。しばらくの間、安定して変化していません。この変更は、Web サービスの利用者に対して完全に透過的でなければなりません。
私はこれを見つけました: http://confluence.highsource.org/display/J2B/Inheritance+plugin
したがって、 <inheritance:implements>com.acme.foo.MyInterface </inheritance:implements> を使用できるはずです
しかし、これには「-Xinheritance」を指定してjaxbを実行する必要があり、Mavenビルドでそれを行う方法がわかりません。wsdl から Java ソースを生成するために org.apache.cxf:cxf-codegen-plugin:wsdl2java を使用しています。
wsdl から xsds にスキーマを抽出し、JAXB で直接 Java ソースを生成する必要がありますか?
他のオプションはありますか?
ありがとう。
xsd - XSD。xsd:elementとxs:elementは異なりますか?
私XSDはw3schoolsに関する記事とここに多くの例を読んでいます。例:これ:
.xsdしかし、このファイルを入れてみた後xjc、エラーログが表示され、次のようになります。
しかし、プレフィックスを変更xsすると、すべて正しく機能します。xsd
それで、誰かが私のためにとの違いを明確にすることができますxsかxsd?
たぶん、1つのプレフィックス-それは古いバージョンであり、他は新しいバージョンです...
jaxb - バインディングファイル経由で @XmlJavaTypeAdapter クラスを指定しますか?
API に一致する xsd ファイルを提供するサードパーティ インターフェイスがあります。それらのマッピングのいくつかは完全に Java ではなく、通常は 0 & 1 のブール値です :-(
バインディング ファイルを使用して、BooleanAdapter の @XmlJavaTypeAdapter クラスを指定したいのですが、今のところ満足していません。
バインディング ファイル:
そして、私はPOMから関連するビットをMavenを使用しているので:
enableWrapperStyle を切り替えましたが、変更はありません
最終的には、間違ったタイプの生成されたアダプターです。
生成されたラッパーを取り除き、BooleanAdapter を直接使用するために使用できるバインディング ファイル マジックはありますか?