Groovy - Jak přenést uzlů XML mezi dokumenty?

hlasů
1

k% subj%, jsem se snažil:

def xp = nový XMLParser ();
def testsuite = xp.parseText ( <testsuite />);
. Def testsuite1 = nový XMLParser () analyzovat ( testsuite.xml);
testsuite1.testcase.each {
  testsuite.append (to);
}

Ale to mi dává výjimku:

groovy.lang.MissingMethodException: Žádný podpis metody: groovy.util.Node.append () platí pro typy argumentů: (groovy.util.Node) hodnoty: {testcase ..., ...}

Přes: http://groovy.codehaus.org/api/groovy/util/Node.html říká:boolean append(Node child)

Tak, jak mohu kopírovat / přesouvat uzly mezi dokumenty? (V Groovy způsobem - bez použití W3D DOM / JDOM ...)

Díky, Ondra

Položena 27/08/2009 v 03:16
zdroj uživatelem
V jiných jazycích...                            


1 odpovědí

hlasů
2

Následující práce, odhadoval jsem, co obsah testsuite.xml by mohl vypadat. Je pravděpodobné, že váš soubor je ten problém.

def ts = "<testsuite/>"
def ts1 = """
<testsuite>
  <testcase>
    <foo>bar</foo>
  </testcase>
  <testcase>
    <foo>baz</foo>
  </testcase>
</testsuite>
""".trim()

def testsuite = new XmlParser().parseText(ts)
def testsuite1 = new XmlParser().parseText(ts1)

testsuite1.testcase.each {
  testsuite.append(it);
}

assert "bar" == testsuite.testcase[0].foo.text()
assert "baz" == testsuite.testcase[1].foo.text()
Odpovězeno 27/08/2009 v 05:45
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more