Subject: Re: XPath problems using JDom 2007-10-22 - By Grzegorz Kaczor
Back Hi,
remove space in "xmlns" attribute in the XML document :).
Regards, Grzegorz
2007/10/22, Bhave, Ameya <bhaveameya@(protected)>: > > Hi, > > I have read some of the literature on this subject in the archives, and am > still unable to sort my problem out. Basically I am trying to read an xml > file using an xpath expression. > > My xml file looks like this: > > -- --- > <?xml version="1.0" encoding="UTF-8 (See http://UTF-8.ora-code.com)"?> > <OTA_AirLowFareSearchRQ EchoToken="0" MaxResponses="20" > Mode="MasterPricer" SequenceNmbr="0" Target="Amadeus" xmlns=" > http://www.opentravel.org/OTA/2003/05" > xmlns:helper="xalan://com.openjaw.rules.XSLHelper" xmlns:xalan="http://xml .apache.org/xalan > "> > <POS> > <Source ISOCurrency="GBP" PseudoCityCode="1AC"> > <ns1:RequestorID > ID="H6265/AAA/32835/2006/41000/OPENJAW/MERLIN" ID_Context="ABTA" xmlns:ns1=" > http://www.opentravel.org/OTA/2003/05" xmlns:ns2=" > http://www.tui-uk.co.uk/OTA_EXT/2006" xmlns:ns3=" > http://www.openjawtech.com/2005" xmlns:ns4=" > http://www.opentravel.org/OTA/2002/08"/> > </Source> > </POS> > <OriginDestinationInformation> > <DepartureDateTime>2007-10-23T00:00:00.000+01:00 > </DepartureDateTime> > <OriginLocation CodeContext="IATA" LocationCode="LGW"/> > <DestinationLocation CodeContext="IATA" LocationCode="PMI"/> > </OriginDestinationInformation> > <OriginDestinationInformation> > <DepartureDateTime>2007-10-30T00:00:00</DepartureDateTime> > <OriginLocation CodeContext="IATA" LocationCode="PMI"/> > <DestinationLocation CodeContext="IATA" LocationCode="LGW"/> > </OriginDestinationInformation> > <TravelerInfoSummary> > <AirTravelerAvail> > <PassengerTypeQuantity Code="ADT" Quantity="2"/> > <PassengerTypeQuantity Code="CHD" Quantity="3"/> > </AirTravelerAvail> > </TravelerInfoSummary> > </OTA_AirLowFareSearchRQ> > > -- --- > > And the code to access the info (using xpath) is: > > -- ---- > public static void getXPathValue(File file) > { > Document xmlDoc = getDocumentForFile(file); > > try > { > // XPath.setXPathClass(org.jaxen.jdom.JDOMXPath.class); > XPath xPath = XPath.newInstance("/ota:OTA_AirLowFareSearchRQ/ota :OriginDestinationInformation"); > > xPath.addNamespace("ota", "http://www.opentravel.org/OTA/2003/05"); > //default ns > > xPath.addNamespace("helper", > "xalan://com.openjaw.rules.XSLHelper"); > xPath.addNamespace("xalan", "http://xml.apache.org/xalan"); > xPath.addNamespace("ns2", " http://www.tui-uk.co.uk/OTA_EXT/2006 > "); > xPath.addNamespace("ns1", "http://www.openjawtech.com/2005"); > xPath.addNamespace("ns3", " http://www.opentravel.org/OTA/2002/08"); > > > > > > List nodes = xPath.selectNodes(xmlDoc); > System.out.println("Nodes = " + nodes); > > } > catch (Exception e) > { > System.out.println("Error: " + e); > e.printStackTrace(System.out); > } > } > -- ---- > > The problem is that the list I get is empty. > > -- > __ ____ ____ ____ ____ _____ > Yours ever, > Ameya Bhave > (M) +44 07894080785 > (H) +44 02476410217 > (E) ameya@(protected) > __ ____ ____ ____ ____ ____ ____ ____ ____ ____ > To control your jdom-interest membership: > http://www.jdom.org/mailman/options/jdom-interest/youraddr@(protected) >
-- "Cho? tyle wiemy w?asnym do?wiadczeniem: W nas jest Raj, Piek?o - i do obu - szlaki." J.K.
Hi,<br><br>remove space in "xmlns" attribute in the XML document :). <br><br>Regards,<br>Grzegorz<br><br><div><span class="gmail_quote">2007/10/22, Bhave, Ameya <<a href="mailto:bhaveameya@(protected)">bhaveameya@(protected) </a>>:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Hi,<br><br>I have read some of the literature on this subject in the archives, and am still unable to sort my problem out. Basically I am trying to read an xml file using an xpath expression. <br><br>My xml file looks like this: <br><br>-- ---<br><?xml version="1.0" encoding="UTF-8 (See http://UTF-8.ora-code.com)"? ><br><OTA_AirLowFareSearchRQ EchoToken="0" MaxResponses="20 " Mode="MasterPricer" SequenceNmbr="0" Target=" ;Amadeus" xmlns=" <a href="http://www.opentravel.org/OTA/2003/05" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://www.opentravel.org/OTA/2003/05</a >" xmlns:helper="xalan://com.openjaw.rules.XSLHelper" xmlns:xalan =" <a href="http://xml.apache.org/xalan" target="_blank" onclick="return top.js .OpenExtLink(window,event,this)">http://xml.apache.org/xalan </a>"><br> <POS><br> <Source ISOCurrency="GBP" PseudoCityCode="1AC "><br> <ns1 :RequestorID ID="H6265/AAA/32835/2006/41000/OPENJAW/MERLIN" ID_Context ="ABTA" xmlns:ns1=" <a href="http://www.opentravel.org/OTA/2003/05" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://www.opentravel.org/OTA/2003/05</a >" xmlns:ns2="<a href="http://www.tui-uk.co.uk/OTA_EXT/2006" target=" _blank" onclick="return top.js.OpenExtLink(window,event,this)"> http://www.tui-uk.co.uk/OTA_EXT/2006</a>" xmlns:ns3=" <a href="http://www.openjawtech.com/2005" target="_blank" onclick="return top .js.OpenExtLink(window,event,this)">http://www.openjawtech.com/2005</a>" xmlns:ns4="<a href="http://www.opentravel.org/OTA/2002/08" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"> http://www.opentravel.org/OTA/2002/08</a>"/><br> </Source> <br> </POS><br> < ;OriginDestinationInformation><br> < ;DepartureDateTime>2007-10-23T00:00:00.000+01:00</DepartureDateTime><br > <OriginLocation CodeContext="IATA " LocationCode="LGW"/> <br> <DestinationLocation CodeContext= "IATA" LocationCode="PMI"/><br> < /OriginDestinationInformation><br> < ;OriginDestinationInformation><br> < ;DepartureDateTime>2007-10-30T00:00:00</DepartureDateTime> <br> <OriginLocation CodeContext=" ;IATA" LocationCode="PMI"/><br> <DestinationLocation CodeContext="IATA" LocationCode=" ;LGW"/><br> </OriginDestinationInformation> <br> <TravelerInfoSummary><br> <AirTravelerAvail><br> <PassengerTypeQuantity Code="ADT" Quantity=" ;2"/><br> < ;PassengerTypeQuantity Code="CHD" Quantity="3"/> <br> </AirTravelerAvail><br> </TravelerInfoSummary><br></OTA_AirLowFareSearchRQ><br> <br>-- ---<br clear="all"><br>And the code to access the info (using xpath) is: <br><br>-- ----<br>public static void getXPathValue(File file) <br> {<br> Document xmlDoc = getDocumentForFile(file);<br><br> try<br> {<br>// XPath.setXPathClass(org.jaxen.jdom.JDOMXPath.class);<br>   ; XPath xPath = XPath.newInstance("/ota:OTA _AirLowFareSearchRQ/ota:OriginDestinationInformation"); <br> xPath.addNamespace(" ;ota", "<a href="http://www.opentravel.org/OTA/2003/05" target="_blank " onclick="return top.js.OpenExtLink(window,event,this)">http://www.opentravel .org/OTA/2003/05</a>"); //default ns <br><br> xPath.addNamespace( "helper", "xalan://com.openjaw.rules.XSLHelper"); <br> xPath.addNamespace(" ;xalan", "<a href="http://xml.apache.org/xalan" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://xml.apache.org /xalan</a>");<br> xPath .addNamespace ("ns2", "<a href="http://www.tui-uk.co.uk/OTA_EXT/2006" target=" _blank" onclick="return top.js.OpenExtLink(window,event,this)"> http://www.tui-uk.co.uk/OTA_EXT/2006</a>");<br> xPath.addNamespace("ns1", "<a href="http ://www.openjawtech.com/2005" target="_blank" onclick="return top.js.OpenExtLink (window,event,this)">http://www.openjawtech.com/2005 </a>");<br> xPath .addNamespace("ns3", " <a href="http://www.opentravel.org/OTA/2002/08" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://www.opentravel.org/OTA/2002/08</a >"); <br><br><br><br><br> List nodes = xPath.selectNodes (xmlDoc);<br> System.out .println("Nodes = " + nodes); <br><br> }<br> catch (Exception e)<br> {<br> System.out.println("Error: " + e);<br> e.printStackTrace(System.out); <br> }<br>}<br>-- ----<br><br>The problem is that the list I get is empty. <br><span class="sg"><br>-- <br>__ ____ ____ ____ ____ _____<br>Yours ever,<br >Ameya Bhave<br>(M) +44 07894080785<br>(H) +44 02476410217<br>(E) <a href="mailto:ameya@(protected)" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)"> ameya@(protected)</a> </span><br>__ ____ ____ ____ ____ ____ ____ ____ ____ ____<br>To control your jdom-interest membership:<br><a onclick="return top.js.OpenExtLink(window,event ,this)" href="http://www.jdom.org/mailman/options/jdom-interest/youraddr @(protected)" target="_blank"> http://www.jdom.org/mailman/options/jdom-interest/youraddr@(protected)</a><br> </blockquote></div><br><br clear="all"><br>-- <br>"Cho? tyle wiemy w?asnym do?wiadczeniem:<br>W nas jest Raj, Piek?o - i do obu - szlaki." <br>J.K.
__ ____ ____ ____ ____ ____ ____ ____ ____ ____ To control your jdom-interest membership: http://www.jdom.org/mailman/options/jdom-interest/youraddr@(protected)
|
|