Hello,
I am not able to read the namespace for my elements correctly. Could
somebody point me to my error. Thank you. Philipp
Compilable example:
import java.io.ByteArrayInputStream;
import java.io.InputStream;
import javax.xml.parsers.DocumentBuilderFactory;
import org.w3c.dom.Document;
import org.w3c.dom.Element;
public class XMLTest {
public static void main(String[] args) {
String xmlString =
"<?xml version=\"1.0\" encoding=\"UTF-8\"?>"+
"<e:test xmlns:e=\"http://www.example.com/e\"/>";
InputStream dataStream = new
ByteArrayInputStream(xmlString.getBytes());
Document document = null;
try {
document =
DocumentBuilderFactory
.newInstance()
.newDocumentBuilder()
.parse(dataStream);
} catch (Exception e1) {
e1.printStackTrace();
}
Element root = document.getDocumentElement();
System.out.println("prefix: " + root.getPrefix());
System.out.println("name: " + root.getNodeName() );
System.out.println("localname: " + root.getLocalName() );
System.out.println("ns_uri: " + root.getNamespaceURI());
// PRINTS:
// prefix: null
// name: e:test
// localname: null
// ns_uri: null
// EXPECTED:
// prefix: e
// name: e:test
// localname: test
// ns_uri: http://www.example.com/e
}
}