我有一個輸入xml和相應的java類,如下所示。Xstream中的繼承問題
<Address>
<name>name</name>
<streetName>street</streetName>
<Address>
public class Address {
private String name;
//getter and setter here
}
public class Home extends Address {
private String streetName;
// getter and setter follows
}
我試着解組像下面
import com.thoughtworks.xstream.XStream;
public class Main {
public static void main(String as[]) {
XStream xstream = new XStream();
String str = "<com.xstream.inheritance.Address> <name>name</name> <streetName>street</streetName>"
+ "</com.xstream.inheritance.Address>";
Address address1 = (Address) xstream.fromXML(str);
System.out.println(address1.getName());
}
}
我得到一個異常說螺紋 異常「主要」
com.thoughtworks.xstream.converters.reflection.AbstractReflectionConverter$UnknownFieldException: No such field com.xstream.inheritance.Address.streetName
---- Debugging information ----
field : streetName
class : com.xstream.inheritance.Address
required-type : com.xstream.inheritance.Address
converter-type : com.thoughtworks.xstream.converters.reflection.ReflectionConverter
path : /com.xstream.inheritance.Address/streetName
version : null
爲什麼我得到這個異常的XML?
我看到你從未批准任何問題的答案。你應該正式批准你認爲正確的答案。有關詳細信息,請參閱http://meta.stackexchange.com/a/65088。 – Pino