Vì vậy, tôi có một doc xml mà tôi đã tuyên bố ở đây:Tìm các yếu tố trong một Node mà không có không gian tên thích hợp, trong Java
DocumentBuilder dBuilder = dbFactory_.newDocumentBuilder();
StringReader reader = new StringReader(s);
InputSource inputSource = new InputSource(reader);
doc_ = dBuilder.parse(inputSource);
Sau đó, tôi có một chức năng mà tôi vượt qua trong một chuỗi và tôi muốn phù hợp mà một phần tử trong xml của tôi:
void foo(String str)
{
NodeList nodelist = doc_.getDocumentElement().getElementsByTagName(str);
}
vấn đề là khi str
đi kèm trong nó không có bất kỳ loại namespace trong nó để xml rằng tôi sẽ thử nghiệm sẽ là:
<Random>
<tns:node />
</Random>
và str
sẽ là nút. Vì vậy, nodelist bây giờ là null vì tns mong đợi của nó: nút nhưng tôi đã thông qua trong nút. Và tôi biết nó không tốt để bỏ qua không gian tên nhưng trong trường hợp này nó là tốt. Vấn đề của tôi là tôi không biết cách tìm kiếm Node cho một phần tử trong khi bỏ qua không gian tên. Tôi cũng nghĩ về việc thêm không gian tên vào str mà đi vào nhưng tôi không có ý tưởng làm thế nào để làm điều đó hoặc.
Bất kỳ trợ giúp sẽ được đánh giá rất nhiều,
Cảm ơn, -Josh
Cảm ơn bạn rất nhiều vì một câu trả lời tuyệt vời khác RD01. – Grammin
@gramm no problem :) –
Điều đó dường như chỉ hoạt động đối với các đối tượng 'DocumentBuilderFactory'' không gian tên ', vì các phần tử DOM cấp 1 không có 'localName' ... –