0
私はJavaオブジェクトに次のXMLを解析しました
<ArrayOfTranslateArrayResponse xmlns="http://schemas.datacontract.org/2004/07/Microsoft.MT.Web.Service.V2" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
<TranslateArrayResponse>
<From>it</From>
<OriginalTextSentenceLengths xmlns:a="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<a:int>5</a:int>
</OriginalTextSentenceLengths>
<TranslatedText>Mom</TranslatedText>
<TranslatedTextSentenceLengths xmlns:a="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<a:int>3</a:int>
</TranslatedTextSentenceLengths>
</TranslateArrayResponse>
<TranslateArrayResponse>
<From>it</From>
<OriginalTextSentenceLengths xmlns:a="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<a:int>4</a:int>
</OriginalTextSentenceLengths>
<TranslatedText>Dad</TranslatedText>
<TranslatedTextSentenceLengths xmlns:a="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<a:int>3</a:int>
</TranslatedTextSentenceLengths>
</TranslateArrayResponse>
私が実装しました。この2クラス:
@XmlRootElement(name="ArrayOfTranslateArrayResponse")
@XmlAccessorType(XmlAccessType.FIELD)
@Getter
@Setter
@ToString
public class TranslateResponse {
@XmlElement(name="TranslateArrayResponse")
private LinkedList<TranslatedResponseObject> translations;
}
と
@XmlAccessorType(XmlAccessType.FIELD)
@Getter
@Setter
@ToString
public class TranslatedResponseObject {
@XmlElement(name="TranslatedText")
private String translatedText;
}
xmlサンプルのunmarshallを指定すると、フィールド変換でnullが返されました。なにが問題ですか?
はあなたの提案をありがとう!エラー:javax.xml.bind.UnmarshalException:予期しない要素(uri: "http://schemas.datacontract.org/2004/07/Microsoft.MT.Web.Service.V2"、ローカル: "ArrayOfTranslateArrayResponse")。期待される要素は<{} ArrayOfTranslateArrayResponse>、<{} TranslateArrayRequest> –