オブジェクトを「逆シリアル化」しようとすると、次のエラーが発生します。
Cannot construct MyClass as it does not have a no-args constructor.
ドキュメントを見ると、XStream が実行されていないということenhanced mode
ですか?
ただし、同じ JVM で同じクラスを使用すると、Google Gson
ライブラリはオブジェクトを問題なくシリアライズおよびデシリアライズできます。
MyClass c;
c = (MyClass) new Gson().fromJson(json, MyClass.class);
では、Gson が JSON に対してできることを XStream が XML に対してできないのはなぜでしょうか? これは XStream コードに簡単にパッチを適用できるものですか?それとも回避するのが容易ではない制限なのでしょうか?
この XStream ライブラリを使用して、引数のないコンストラクターを持つオブジェクトであっても、オブジェクトをシリアル化/逆シリアル化できる必要があります。