【发布时间】:2012-02-29 23:24:17
【问题描述】:
我在 Kettle 下使用 XStream 将 XML 反序列化为 Java 对象,它总是给我一个例外:
nodecom.thoughtworks.xstream.mapper.CannotResolveClassException
然后我尝试将我的代码与 Kettle 分开并作为一个简单的 Java 应用程序。它工作正常。 例如:
public static void main(String[] args) {
person p = new person("JJ", "MM");
XStream xstream = new XStream(new DomDriver());
xstream.alias("personname", person.class);
String xml = xstream.toXML(p);
person pp = (person) xstream.fromXML(xml);
System.out.println(pp.toString());
}
public class person {
private String firstname;
private String lastname;
public person(String first, String last) {
this.firstname = first;
this.lastname = last;
}
public String getFirstname() {
return this.firstname;
}
public String getLastname() {
return this.lastname;
}
public void setFirstname(String name) {
this.firstname = name;
}
public void setLastname(String name) {
this.lastname = name;
}
}
这段代码运行良好。 但是,当我将此代码移动到 Kettle 插件中时,它无法从 XML 文件中读取元数据。
【问题讨论】: