Trouver des éléments dans un Nœud sans l'espace de noms, en Java

Donc, j'ai un document xml que j'ai déclaré ici:

DocumentBuilder dBuilder = dbFactory_.newDocumentBuilder();
StringReader reader = new StringReader(s);
InputSource inputSource = new InputSource(reader);
doc_ = dBuilder.parse(inputSource);

Puis j'ai une fonction où je passe une chaîne et je veux correspondre à un élément dans mon xml:

void foo(String str)
{
  NodeList nodelist = doc_.getDocumentElement().getElementsByTagName(str);
}

Le problème, c'est quand le str vient, il n'y a pas d'espace de noms en sorte que le xml que je serais essais:

<Random>
  <tns:node />
</Random>

et la str sera nœud. Donc nodelist est maintenant nulle, car ses attend tns:nœud, mais je suis passé dans le nœud. Et je sais que c'est pas bon d'ignorer l'espace de noms mais dans ce cas, son amende. Mon problème est que je ne sais pas comment faire pour rechercher le Nœud d'un élément tout en ignorant l'espace de noms. J'ai aussi pensé à l'ajout de l'espace de noms pour le str qui arrive, mais je n'ai aucune idée de comment le faire.

Toute aide serait grandement appréciée,

Grâce, -Josh

InformationsquelleAutor Grammin | 2011-01-14