Это интересно, я раньше такого не видел.Проблема была в том, что у вас есть атрибут с пространством имен xsi:nil="true"
, который вызывает проблемы, когда вы берете подмножество XML, но пространство имен больше не определяется.Если вы сначала удалите его, все будет работать.
Попробуйте это:
* remove Test1 //poolGroupId/@nil
* def temp = $Test1/Envelope/Body/getPlan/planSummary/feature
Другой подход, который вы могли бы попробовать, - это заменить строку, чтобы удалить неприятные вещи в XML перед выполнением XPath..
EDIT: добавлена информация о том, как заменить строку с помощью Java.Ниже будет вырезана вся часть xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns4:Plan"
.
* string temp = Test1
* string temp = temp.replaceAll("xmlns:xsi[^>]*", "")
* print temp
Итак, вы поняли идею.Просто используйте регулярное выражение.