次の XML をデシリアライズしようとしています。「day」と「fulldob」は、カスタム ロジック用の個別のコンバーターを持つオブジェクト タイプです。一度デシリアライズし、オブジェクトに toXML メソッドを適用すると、「day」と「fulldob」の値が失われます。つまり、day と fulldob が適切に逆シリアル化されていません。誰か助けてくれませんか?
** * ** * ** * *入力 XML * ** * ** *
<primarydob>
<month>05</month>
<day>13</day>
<year>1982</year>
<fulldob>19820513</fulldob>
</primarydob>
** * *オブジェクトからの XML (上記の XML を逆シリアル化した後) * ** * ** *
<primarydob>
<month>05</month>
<day/>
<year>1982</year>
<fulldob/>
</primarydob>
「primarydob」のオブジェクトは次のとおりです。
@XStreamAlias("dob")
public class DOBData {
@XStreamAlias("month")
private String month;
@XStreamAlias("day")
private DOBDay dobDay = new DOBDay();
@XStreamAlias("year")
private String year;
@XStreamAlias("fulldob")
private FullDOB fulldob = new FullDOB();
getters/setters
}
「fulldob」のオブジェクトは次のとおりです。
@XStreamAlias("fulldobdata")
@XStreamConverter(FullDOBDayMaskingConverter.class)
public class FullDOB {
@XStreamAlias("fulldob")
private String fullDOB;
public String getFullDOB() {
return fullDOB;
}
public void setFullDOB(String fullDOB) {
this.fullDOB = fullDOB;
}
}
ここに「日」のオブジェクトがあります
@XStreamAlias("dobday")
@XStreamConverter(DOBDayMaskingConverter.class)
public class DOBDay {
@XStreamAlias("day")
private String day;
public String getDay() {
return day;
}
public void setDay(String day) {
this.day = day;
}
}
ありがとう、