Digester规则xml填充值列表

时间:2011-03-11 16:19:33

标签: java xml apache-commons-digester

我有一个类似SDO的对象,我需要借助消化器规则进行解析。 对象可以有一个列表,存储与对象本身相同的类型,例如

  class SdoLike{
     private List<SdoLike> listValue;

    public addListValueItem(SdoLike sdoLike){
        this.listValue.add(sdoLike);
       }
    }

如何在xml中定义消化器规则?

<pattern value="ListValue">
            <object-create-rule classname="SdoLike"/>
                    <!--.......... -->
            <set-next-rule methodname="addListValueItem"/>
    </pattern>

感谢。

1 个答案:

答案 0 :(得分:0)

所以...过了一段时间

我将SdoLike类的规则定义放在一个单独的文件中

<pattern value="*/ListValue">
    <object-create-rule classname="tra.ta.ta.SdoLike" />
    <extended-include path="META-INF/digester/SdoLike.xml" />
    <set-next-rule methodname="addListValueItem" />
</pattern>

此模式不得嵌套到其他模式中。