問題タブ [xstream]

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.

0 投票する
4 に答える
16839 参照

xml - XStream は属性と値を同時に解析します

私は次のXMLを持っています

そしてシティクラス

XMLを解析するために次のエイリアスを試しました

しかし、取得した XML で City オブジェクトを変換しようとすると、「loc」タグの値を設定する方法がわかりません。

本当にこれを手に入れる必要があるとき

次に、XML を City オブジェクトに解析しようとすると、null 値を持つフィールド「name」が取得されます。

これを行うために正しいエイリアスを設定する方法を知っている人はいますか? 前もって感謝します。

0 投票する
1 に答える
378 参照

java - xStreamを使用してListプロパティを持つJavaオブジェクトを出力するにはどうすればよいですか?

いくつかのJavaオブジェクトをJSONとして出力しようとしていますが、それらには{"People":[{"Name": "Bob"}、{"Name":"Jim"}]}としてフォーマットしたいListプロパティがあります。

ただし、XStreamでこれを行う方法がわかりません。常に{"Person":{"Name": "Bob"}、 "Person":{"Name":"Bob"}として出力されます

これを修正する方法はありますか?より具体的なものが必要な場合は、githubでユニットテストを使用してサンプルコードをまとめました:http://gist.github.com/371358

ありがとう!

0 投票する
1 に答える
910 参照

xml - xml と json を返すための XStream マーシャリングの問題

私が使うとき

次のxmlを返します...

そして、私が使用するとき

次のjsonを返します...

さて、クラス属性を完全に取り除きたいので(他のものとエイリアスするのではなく、それを削除するために読んでください)、次のコードを使用します。

次のxmlを提供します...

しかし、上記の xStream オブジェクトの作成中に new JsonHierarchicalStreamDriver() を渡すと、json が返されません。上記と同じ xml を返します。

ここで何が間違っているのですか?

前もって感謝します...

0 投票する
1 に答える
989 参照

xml - xstream と iPhone SDK 間の Base64 エンコード/デコード

XML で Java サーバーから iPad クライアントにバイト配列を渡しています。サーバーはxstreamを使用して、バイト配列を EncodedByteArrayConverter で XML に変換します。これにより、配列が Base 64 に変換されます。xstream を使用すると、Java クライアントで xml を適切なバイト配列にデコードできますが、iPad クライアントでは、長さが無効であるというエラーが表示されます。デコードを行うために、このページの下部にあるコードを使用しています。文字列の長さは実際にはありません4の倍数なので、私の文字列には何か奇妙なものがあるに違いありません.xstreamはそれをうまくデコードできるので、iPad側でデコードする必要があるだけだと思います. 文字列の末尾のパディングを切り取って適切なサイズにしようとしましたが、これによりデコーダーは機能しますが、無効なヘッダーを持つ JPG になり、表示できなくなります。

サーバー側では、次のコードを使用しています。

クライアント側では、次のように XML 解析コールバックから上記のデコーダーを呼び出しています。

何がうまくいかないのでしょうか?

0 投票する
1 に答える
10981 参照

java - XStreamに1つの特定のプライベート変数を無視させる

現在保存関数を作成しているクラスに少し問題があります。

XStream(com.thoughtworks.xstream)を使用して、DOMDriverを使用してクラスをXMLにシリアル化します。

クラスは次のようになります。

したがって、ここでの問題は、worldをシリアル化するときにConfigurationをシリアル化するのではなく、fromXml()を呼び出すときにXStreamに事前に構築されたConfigurationインスタンスを提供したいということです。

ここでの問題は主にクラスの設計です。構成はGUIクラスへのプライベート参照を保持するため、構成をシリアル化することは、アプリケーション全体をGUIなどで完全にシリアル化することを意味します。

プライベートフィールド構成をシリアル化しないようにXStreamに指示し、ロード時に使用する構成インスタンスをXStreamに提供する方法はありますか?

ダニエルの挨拶

0 投票する
1 に答える
1167 参照

java - XStream シリアライズ可能オブジェクト

現在、Serializable を実装していないオブジェクトの一部をシリアル化するために XStream を使用しています。オブジェクトが Serializable を実装している場合は Java のデフォルトのシリアライゼーションを使用し、そうでない場合は XML シリアライゼーションにフォールバックするように XStream に指示する方法はありますか? または、チェックするためにその上に単純なレイヤーを実装する必要がありますか?

ありがとう、ジェフ

0 投票する
2 に答える
919 参照

java - XStreamを使用して、個別の「成功」フォームと「失敗」フォームでXML応答を逆シリアル化しますか?

XStreamとJavaを使用して、オブジェクトとXML要求、およびXML応答とオブジェクトを変換することを計画しています。XMLはHTTP/HTTPSを介して流れます。応答側では、あるJavaクラスにマップされるように見える「成功」応答、または別のJavaクラスにマップされるように見える「失敗」応答を取得できます。

たとえば、「ファイルリスト」リクエストの場合、肯定的な応答を受け取ることができます。

または私は否定的な応答を得ることができます例えば、

これを処理するには、両方の場合に1つのクラスにフィールドを含める必要がありますか、それともXStreamを使用して2つの潜在的なクラスの1つを「条件付きで」作成する必要がありますか?

同じオブジェクトに両方の応答ケースのフィールドがある場合は、次のようになります。

「成功またはエラーの場合にXStreamを使用して、さまざまなオブジェクトを作成する」とはどのようなものかわかりません。どういうわけかそれを行うことは可能ですか?それは良い方法ですか、それとも悪い方法ですか?

とにかく、この成功と失敗の応答のケースに対処するためにXStreamを使用して処理する方法についてのアドバイスをいただければ幸いです。前もって感謝します!

0 投票する
1 に答える
106 参照

java - Xstream で異なる結果が得られる

安らかなサービスに XStream を使用しています。ただし、Xstream では、同じ値を持つフィールドに対してさまざまな結果が得られます。それを想定 Book オブジェクト:

このためのjsonは次のとおりです。

ただし、著者をコレクションに追加すると、別の結果が得られます。

誰かがこの問題に遭遇し、解決策を知っていますか?

0 投票する
3 に答える
2210 参照

c++ - XSTREAMと同様のC++シリアル化クリーンXML

設定をXML形式で保存し(手作業で簡単に編集できるように)、ソケットとHTTPを介してXMLメッセージを介して既存のアプリと通信するLinuxc++アプリを作成する必要があります。問題は、私を助けるインテリジェントなライブラリを見つけることができなかったことです。非常に単純なメッセージを書き込んだり読んだりするためだけにDOMまたはSAXコードを書く気は特にありません。

Boost Serializationはほぼ一致しましたが、生成するxmlに多くのBoost固有のデータが追加されます。これは明らかにインターチェンジ形式ではうまく機能しません。BoostSerializationまたは他のc++シリアル化ライブラリでクリーンなxmlを生成できるかどうか疑問に思っています。バージョン属性など、必要な追加の属性があるかどうかは気になりませんが、それらの名前を制御し、使用しない「機能」を削除できるようにしたいと思います-tracking_levelとclass_id for実例。

理想的には、Javaのxstreamに似たものが欲しいだけです。私は、C ++には内省がなく、したがって手動でコーディングする必要があるという事実を認識しています。しかし、単純なXMLを恨みなく読み書きするだけのクリーンなソリューションがあれば、それは素晴らしいことです。

これができない場合は、XMLスキーマが正規のリソース(最初にコントラクト)であるツールにも興味があります。これは、C++に代わる優れたJAXBです。これまでのところ、CodeSynthesisXSDのような商用ソリューションしか見つかりませんでした。私はオープンソースソリューションを好みます。私はgSoapを試しましたが、それは本当に醜いコードを生成し、SOAP固有でもあります。

必死になって、私はプロトバッファの代替シリアル化フォーマットも検討し始めました。これは存在しますが、Javaの場合のみです。プロトコルバッファがXMLよりもサポートされているデータ交換形式の方が優れているように思われることに本当に驚いています。

私はこのアプリのライブラリを見つけるだけで怒ってしまいます。本当にいくつかの新しいアイデアが必要です。誰?

0 投票する
3 に答える
5128 参照

java - XStream で不要なエスケープを無効にするにはどうすればよいですか?

デフォルトでは、XStream は不必要にエスケープします>..." など。

これを無効にする方法はありますか (エスケープするだけです<, &)?