我正在使用Apache Digester来解析如下所示的XML,并且我编写了以下代码来对其进行解析。似乎可以解析(我将调试点放在KSO属性的setter方法上),但是KSO代码的对象没有添加到Header bean中。要在Header bean中添加Kso bean,我需要做什么?
示例XML-
<lineups country="USA"> <header headerId="IN67397"> <name>Great Western</name> <kso ksoId="17758">GW Media</kso> </header> </lineups>
以下是我在摘要器中创建的内容:
Digester digester = new Digester(); digester.setValidating(false); digester.push(new Headers()); // There will be multiple digester.addObjectCreate("gn/lineups/header", "com.sample.model.header.Header"); digester.addSetProperties("gn/lineups/header"); // Id digester.addSetProperties("gn/lineups/header/name"); digester.addCallMethod("gn/lineups/header/name", "setName", 0); // KSO Code digester.addObjectCreate("gn/lineups/headend/kso", "com.sample.model.header.Kso"); digester.addSetProperties("gn/lineups/headend/kso"); //sets the ksoId digester.addCallMethod("gn/lineups/headend/kso", "setName", 0); public class Header { private String headerId; private String name; private Kso kso; // getter setters are in place }
Kso类别-
public class Kso
{
private String ksoId;
private String name;
// getter setters are in place
}
我正在使用Apache Digester来解析如下所示的XML,并且我编写了以下代码来对其进行解析。似乎可以解析(我将调试点放在KSO属性的setter方法上)...
变更夫妇使其对我有用: