This week's book giveaway is in the General Computing forum.
We're giving away four copies of Arduino in Action and have Martin Evans, Joshua Noble, and Jordan Hochenbaum on-line!
See this thread for details.
The moose likes XML and Related Technologies and the fly likes xPath and namespace problem Big Moose Saloon
  Search | Java FAQ | Recent Topics
Register / Login


JavaRanch » Java Forums » Engineering » XML and Related Technologies
Reply Bookmark "xPath and namespace problem" Watch "xPath and namespace problem" New topic
Author

xPath and namespace problem

Jeppe Sommer
Ranch Hand

Joined: Jan 07, 2004
Posts: 263
Hello,

I am trying to query a xml file using xPath, but I am having some problem as I guess the xml file has namespace declarations.

I am trying to get the text of the element called: /Invoice/com:ID, but I just get a nullpointer.

Here is my code:


Here is the XML file:



Does anyone know what I do wrong?

Thanks in advance...
Phil Fearon
Greenhorn

Joined: May 30, 2008
Posts: 1
You're nearly there.

The problem is that XPath 1.0 doesn't understand the default namespace that is declared as:

xmlns="http://rep.oio.dk/ubl/xml/schemas/0p71/testpie/"

Try specifying a prefix for this namespace instead such as:

Namespace ns_com = Namespace.getNamespace("def", "xmlns="http://rep.oio.dk/ubl/xml/schemas/0p71/testpie/");

You should then be able to access the node using the following:

org.jdom.xpath.XPath xp = org.jdom.xpath.XPath.newInstance("/def:Invoice/com:ID");


XML and Information Architecture
Jeppe Sommer
Ranch Hand

Joined: Jan 07, 2004
Posts: 263
Dear Phil,

Thanks for your reply.

I tried the following code but it still doesn�t work?! I am wondering if I have to to declare all the namespaces or just the one I want to access? Anyway I have tried to declare all namespaces but without a result.



Here is the XML code:
kadavul seelan
Greenhorn

Joined: Dec 20, 2010
Posts: 5
Hye,
Are you find a solution?
g tsuji
Ranch Hand

Joined: Jan 18, 2011
Posts: 375
    
    1
The revised code segment as posted in posted Friday, May 30, 2008 5:46 PM should be working for the purpose. If it does not work out rightaway, it is only because of the conditioning where the segment is expected to execute, such as defective classpath or import statements or exception throwing...
 
I agree. Here's the link: http://ej-technologies/jprofiler - if it wasn't for jprofiler, we would need to run our stuff on 16 servers instead of 3.
 
subject: xPath and namespace problem
 
Similar Threads
Parsing XML file using Xpath in jdk1.4
whats wrong with this xml
XSL transformation
How to resolve namespaces for XPath with JDOM
Get namespace of root element