【问题标题】:XmlSlurpur The prefix "something" for element "something:element" is not boundXmlSlurpur 元素“something:element”的前缀“something”未绑定
【发布时间】:2015-03-25 19:55:24
【问题描述】:

我正在像这样使用 XmlSlurper:

  def slurper = new XmlSlurper().parseText(xmlObj.lensData).declareNamespace(something:'something')

当我 slurp 以下 xml 时,它会报错:

 <something:Data>
      <something:Requirements>
            <something:Type>
                <something:Value>T</something:Value>
                <something:Label>TYP</something:Label>
            </something:Type>
      </something:Requirements>
 </something:Data>

我得到的错误是:

The prefix "something" for element "something:Data" is not bound.. Stacktrace follows:
Message: The prefix "something" for element "something:Data" is not bound.

我真的不明白该怎么做才能解决这个问题。 有什么想法吗?

【问题讨论】:

  • 如果您有权访问 XML,将 xmlns:something="something" 作为第一个标签的属性添加将解决此问题。

标签: xml groovy xmlslurper


【解决方案1】:

您需要在 XmlSlurper 上使用不同的构造函数才能通过 parseText 的验证/命名空间感知。试试:

def slurper = new XmlSlurper(false, false).parseText(xmlObj.lensData).declareNamespace(something:'something')

http://docs.groovy-lang.org/docs/latest/html/gapi/groovy/util/XmlSlurper.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-25
    • 2013-01-14
    • 2015-01-29
    • 2011-08-10
    • 2012-10-03
    • 1970-01-01
    • 1970-01-01
    • 2011-10-31
    相关资源
    最近更新 更多