問題タブ [oxm]
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.
spring - org.springframework.oxm.UnmarshallingFailureException: JAXB unmarshalling 例外の予期しない要素 (uri:""、local:"html")
もう1つは、次のエラーを修正するのに3時間費やしましたが、ここで答えが見つからなかったので、答えを見つけたので、あなたと共有することにしました.
Java 6、Spring MVC、JAXB を使用していますが、新しい Web サービスを作成しているときに、次のエラーが発生しました。
java - OXM: 変数要素名のマッピング
従来のフリー スタイルの Web サービスから、次の種類のデータを受信しています。
要素名key1, key2, ...
は事前に知られておらず、任意の識別子である可能性があるため、これを XSD で表現するのは簡単ではありませんがany
、JAXB で直接マップすることはできません。
JAXB拡張機能を使用して、これを何らかの形でマップすることは可能ですか
MOXy の を試しまし@XPath
たが、適切な XPath 式が見つかりませんでした。
MOXy である必要はありません。
spring - Spring OXM の「context-path」エラー
私は依存関係を持つ Grails プロジェクトを持っています。これは私の別のプロジェクトであり、spring-oxm
. 私の Grails プロジェクトは<import resource="some.xml">
、.jar 内にある .xml を正常に処理できますが、次のエラーが表示されます。
Grails BuildConfig.groovy に次のような依存関係があります。
そして、私の他の(Maven)プロジェクトへのこの依存関係:
oxm-marshaller の Bean を作成する方法は次のとおりです。
また、Maven プロジェクトのテストを実行するたびに、Spring アプリケーション コンテキストが完全に読み込まれるため、スタンドアロンで確実に動作します。
ここで何が問題なのですか?両方のプロジェクトで同じ spring-oxm 依存関係を使用しましたが、これらのエラーがまだ発生するのはなぜですか? 助けが必要!
編集:簡単な回避策... Mavenプロジェクトを依存関係としてインポートする代わりに、MavenプロジェクトからGrailsプロジェクトに持っていたすべてのコードをコピーして貼り付けてみましたが、問題なく動作します...何がうまくいかなかったのか知りたいここ :(
編集 2: 別の方法で Bean を作成しようとしました... Spring Bean 自体を作成する代わりに、oxm 名前空間を使用しました。Maven プロジェクトでマーシャラーを作成すると、次のようになりました。
おもしろいのは、私の Grails プロジェクト (以前にコピーして貼り付けたもの) では、次のようになっていることです。
contextPath 属性のキャメルケース規則に注意してください。なぜこのようになっているのですか?
spring - Java jaxb マーシャリング例外処理
xsd で xml を検証するために jaxb マーシャリングを使用しています... 2 GB のレコードを扱っています。
ある時点で xsd 検証例外が発生しています... 処理するデータ量が少ない場合、データがどこで間違っているかを簡単に特定できます。
しかし、その大量のデータの場合は困難です。誰かがこの問題についていくつかのアイデアを提案してくれますか?
java - jaxb: 列挙型リストで奇妙なクラス キャスト例外が発生しました
jaxb
ファイルからJavaクラスを生成するために使用していxsd
ます。xsd
には、列挙と同じように定義された定数のリストを内容とする要素の定義が含まれていxsd
ます。
オラクルのjdk1.7
( v2.2.4-2
) から JAXB 参照実装を使用してクラスが生成されると、列挙型のリストを反復処理して、それらに同じ型の変数を割り当てることができます。
jdk1.8
ただし、オラクルの(ビルド1.8.0_45-b15
- 投稿日現在で最新) JAXB 参照実装 ( )を使用してクラスが生成されるv2.2.8-b130911.1802
と、リストの要素を列挙型の変数に割り当てることができなくなります。
拡張 for ループを使用して代入または反復しようとすると、ClassCastException
どちらの場合も、リスト自体は正しい列挙型でパラメーター化されています。
上記の問題を再現するコードは次のとおりです。
XSDファイル
XML ファイルのテスト
テストリーダー
出力 jdk1.7
出力 jdk1.8
上記の出力から、タイプの要素がjava.lang.String
リストに密輸されているList<GConstNameType>
かString
、s List の代わりにGConstNameType
s の List が設定されていることが明らかです。とにかく、String
xml ファイルの列挙名は Java 列挙定数にマップされません。
Java ランタイムはどちらの場合も同じでjre
、jdk1.8
.
生成に使用されるコマンド:
と
- これはどのように可能ですか / ここで何が起こっていますか?
- 上記のスキーマ定義は、列挙を定義するのに正しくありませんか?
XmlAdapter
(すべての jdk バージョンで機能する方法)を使用せずにこの問題を回避するにはどうすればよいですか?
編集
生成された両方のパッケージの唯一のコードの違い
注釈の削除
生成されたjdk1.8
コードを完全に機能させます。
- 新しい
JAXB
実装が列挙型を にマッピングするのはなぜanySimpleType
ですか?
spring - マッピングによる Spring Castor アンマーシャリング
Spring で Castor OXM Unmarshalling を使用して、XML をオブジェクトに非整列化しようとしています。
次のエラーが表示されます。
私はいくつかの方法を試し、十分な時間を費やしたので、皆さんからの助けが必要です.
どんな助けでも役に立ちます。
spring - Spring-Framework 4.2.6 をビルドした後、castor、jaxb、xmlbeans が spring-oxm のプログラムの下にありませんでした
すべてが見つかりましたが、3 つのファイル:castor、jaxb、および xmlbeans.(miss) は以下のようになります。
私は瓶をダウンロードしようとするより。明らかに、それは機能しません 2つ以上のリンクを投稿するには、少なくとも10の評判が必要です..だから..ビルドパスに3つのjarをインポートする画像、アップロードできません..3つのjarは、castor.jar、jaxb.jar、およびxmlbeansですjarfire.com からダウンロードした .jar。以下のエラーより
私は中国のインターネットでそれを理解しようとしていますが、そのような情報は役に立ちません。誰でも私を助けることができます。