Итак, у меня есть xml-документ, который я объявил здесь:
DocumentBuilder dBuilder = dbFactory_.newDocumentBuilder();
StringReader reader = new StringReader(s);
InputSource inputSource = new InputSource(reader);
doc_ = dBuilder.parse(inputSource);
Затем у меня есть функция, в которой я передаю строку, и я хочу сопоставить ее с элементом в моем xml:
void foo(String str)
{
NodeList nodelist = doc_.getDocumentElement().getElementsByTagName(str);
}
проблема заключается в том, что когда появляется str
, в нем нет какого-либо пространства имен, поэтому xml, который я бы тестировал, будет:
<Random>
<tns:node />
</Random>
, а str
будет узлом . Итак, список узлов теперь равен нулю, потому что он ожидает tns: node, но я передал узел. И я знаю, что игнорировать пространство имен нехорошо, но в данном случае все в порядке. Моя проблема в том, что я не знаю, как искать элемент в узле, игнорируя пространство имен. Я также подумал о добавлении пространства имен к входящей строке, но я тоже не знаю, как это сделать.
Любая помощь будет принята с благодарностью,
Спасибо, -Josh