問題タブ [castor]
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.
web-services - Spring と Castor を使用して複数の REST Web サービスを処理する
Springs を使用して複数の Rest Web サービスへのアクセスを処理する最良の方法について、誰かが私にアドバイスできますRestTemplate
か?
RestTemplate
オブジェクトにメッセージ コンバータ参照 ( MarshallingHttpMessageConverter
) があり、これが への参照を持っていることはわかっていますunmarshaller
。私の場合CastorMarshaller
、関連付けられたマッピング ファイルで Spring Frameworks オブジェクトを使用しています。
通常、すべてのマッピングを 1 つの Castor マッピング ファイルに追加するだけで済みます。ただし、私の場合、すべての Web サービスはこの形式 (以下のブロック) であり、呼び出されたサービスに応じて異なるエンティティを保持する < 行 ... /> があります。
CastorMarshaller
が に注入され、MessageConverter
それ自体がRestTemplate
アプリケーション コンテキスト構成ファイルの に注入されます。
私が考えてきた可能なオプション:
RestTemplates
1 Rest サービスごとに複数作成します。
2 サービスごとに複数作成MessageConverters
し、別のサービスにアクセスする場合は、テンプレートのメッセージ コンバーターを変更します。
3 異なるサービス用に複数のCasterMarshaller
オブジェクトを作成し、新しいオブジェクトでメッセージ コンバーターを更新します。unmarshaller
同じルート要素とサブ要素を使用して、このような複数のサービスを処理する最善の方法は何ですか?
よろしくお願いします Sman UK
castor - XML 属性値のキャスターを生成する方法
私はキャスターマッピングに慣れていません。xmlの下にキャスターを書く方法を教えてください。
特に、属性値のマッピングを探しています。前もって感謝します。
java - castor を使用してオブジェクトのリストをアンマーシャリングすると、java.lang.IllegalArgumentException: object is not an instance of declaring class が返される
私は castor 1.3.3-rc1 を使用していますが、この問題に戸惑っています。マニュアルを数回読んだことがあり、ここですべてを行ったと思いますが、取得し続けます:
私のxmlをアンマーシャリングするとき。
これらは私のJavaクラスです:
これは、上記の Java クラスにアンマーシャリングされる私の xml データ ファイルです。
そして、これは私のキャスターマッピングファイルです
Spring OXM を使用し、アプリケーション コンテキストに org.springframework.oxm.castor.CastorMarshaller インスタンスを作成し、Unmarshaller インスタンスを依存関係として注入しました。アンマーシャリングするときは、次のようにします。
誰が私が間違っていたのか/他にどのようにこの問題をデバッグできるのかを見つけることができますか?
java - Apache Xerces はストリーミング XML パーサーですか?
castorを使用して巨大な XML ファイルを非整列化する必要があるアプリケーションを作成しています。このため、Stax などのストリーミング XML パーサーを使用して XML ファイルを解析する必要があります。Castor のドキュメントによると、castor のデフォルトのパーサーは Xerces です。Xerces のホームページにアクセスしましたが、Xerces がストリーミング パーサーであるかどうかの情報は見つかりませんでした。
Xerces がストリーミング パーサーであるかどうかは誰にもわかりません。ありがとうございました。
java - Castor マーシャリング :: 無効な XML 文字
オブジェクトを XML に変換するためにキャスターAPI を使用しています。
次の例外が発生します
原因: org.xml.sax.SAXException: 文字 '' は無効な XML 文字です。
ソースを修正するのが正しいアプローチであることは知っていますが、そのような無効な文字がたくさんあります。
別のフォーラムで、Java オブジェクトのコンテンツをマーシャリングする前にエンコードしてから、出力をデコードすることを提案した人もいました ( Base64
)。このアプローチはかなり面倒に見え、ソリューションに適切に適合しません。
マーシャリング中にこれらの文字をスキップする方法が必要であり、生成された XML には文字がそのまま含まれている必要があります。
java - Castor を使用したマーシャリングとアンマーシャリング
クラスオブジェクトのリストをマーシャリングおよびアンマーシャリングしたいと言いjava.util.List<MyObject>
ます。Castor を使用する予定です。Castor-0.9.5.*.jarバージョンを使用する必要があります。
さらに、Marshaled object( MyObject
) の XML スキーマがあります。MyObject
class にはデフォルトのコンストラクターがなく、すべてのフィールドを設定するパラメーター化されたコンストラクターのみがあります。MyObject
また、クラス内のどのフィールドにもセッター メソッドはありません。MyObject
クラスをまったく変更できません。
MyObject
クラスのスニペットは次のとおりです。
私の質問は次のとおりです。
- このシナリオでは Castor が適切な選択ですか? そうでない場合、より良い選択は何ですか?
- 私の場合、Castor マッピングを作成する方法。これにO2XMapperを使用してみましたが、
MyObject
クラスにデフォルトのコンストラクターがないため機能しませんか? - の XML スキーマを使用して
MyObject
Castor マッピングを生成する方法はありますか。 org.exolab.castor.xml.XMLContext
Castor jar にとクラスが見つかりませんでしたorg.castor.xml.BackwardCompatibilityContext
。これらは Castor jar の一部ではありませんか?
rest - Springs: @xml タグでドメイン クラスにアノテーションを付けずに Restful サービスを作成する
安らかなサービスを作成する必要があります。一部のクラスにアクセスできませんが、結果で同じクラスを送信する必要があります。オブジェクトをxmlにマップする方法はありますか? org.springframework.oxm.castor.CastorMarshaller を使用してみましたが、xml のような追加のタグで応答が返されます
キャスターマーシャラーを使用してそれを行う方法はありますか? そうでない場合は、だれでも書き込みページにリダイレクトできます