2

我对 Apache Digester 3.2 有疑问,希望您能帮助我:

我必须解析的 XML 包含以下几行(以及更多):

<CountryName
    code = "GFR"
    name = "Germany"
    IsTerritory = "False"
    ProfileURL = "germany.doc"/>

消化器的规则由另一个 XML 文件给出:

   <pattern value="CountryName">
      <object-create-rule classname="model.CodeNamePair"/>
      <set-properties-rule/>
      <set-next-rule methodname="addCountry"/>
   </pattern>

这应该创建一个 CodeNamePair 的对象(其中包含一个字符串“代码”和一个字符串“名称”,就像在上面的 XML 中一样。
下一个方法“addCountry”(希望)与下面的这个问题无关:
消化器无法解析这部分。它会抛出 NoSuchMethodException 和消息:

"java.lang.NoSuchMethodException: Property IsTerritory can't be set"

虽然我不想解析 IsTerritory 属性。你知道我是否(以及如何)能够忽略这个属性?

现在已经:非常感谢(希望我的问题不要写得太复杂)

4

1 回答 1

1

尝试

<set-properties-rule>
  <ignore attr-name="IsTerritory" />
</set-properties-rule>

代替

<set-properties-rule/>

(未测试)

于 2013-11-22T09:00:54.263 回答