2015-02-03 4 views
1

Скажем, у меня есть следующий XML-документ:Нахождение всех XML-узлов с остальными убедила в XmlPath

<Devices> 
    <Scanners> 
     <atom:link href="http://localhost/111" rel="http://1" /> 
     <atom:link href="http://localhost/222" rel="http://2" /> 
    </Scanners> 
    <Printers> 
     <atom:link href="http://localhost/333" rel="http://3" /> 
     <atom:link href="http://localhost/444" rel="http://4" /> 
    </Printers> 
    <atom:link href="http://localhost/555" rel="http://5" /> 
</Devices> 

Использование REST уверил-х XmlPath Я хотел бы прочитать все <atom:link> узлы - на самом деле их список атрибутов - в список , независимо от того, где узел находится в дереве. Пока что мой код выглядит так:

XmlPath xmlPath = new XmlPath(response); 
// This gives me a list of five entries --> OK 
List<Node> linkNodes = xmlPath.get("depthFirst().findAll { it.name() == 'link' }"); 
// This prints five empty lines --> NOT OK 
for (Node linkNode : linkNodes) { 
    System.out.println(linkNode.get("@href")); 
} 

Что мне здесь не хватает?

ответ

2

Достаточно ли просто сделать следующее?

List<String> links = xmlPath.get("**.findAll { it.name() == 'link' }[email protected]"); 
... 
+0

Это спасло меня так много времени. Не могли бы вы сообщить мне, где я могу найти дополнительные варианты. Я просмотрел файл xmlPath restasured doc, но атрибут выборки там не упоминался. –

 Смежные вопросы

  • Нет связанных вопросов^_^