Problem with XML-parsing

Put your problem here if it does not fit any of the other categories.

Problem with XML-parsing

Postby rocke » Mon Jul 21, 2008 12:55 am

Hey,

I try to get some XML via HTTP, which works fine. I'm even able to read the element tags.
But getting the values is a big problem.

Here's my XML:

Syntax: [ Download ] [ Hide ]
Using xml Syntax Highlighting
  1.  
  2. <customers type="array">
  3.  
  4.   <customer>
  5.  
  6.     <birthday type="date">1981-01-21</birthday>
  7.  
  8.     <customer-number type="integer">1</customer-number>
  9.  
  10.     <forename>Bob</forename>
  11.  
  12.     <surename>Flippser</surename>
  13.  
  14.   </customer>
  15.  
  16.   <customer>
  17.  
  18.     <birthday type="date">1968-02-22</birthday>
  19.  
  20.     <customer-number type="integer">2</customer-number>
  21.  
  22.     <forename>Fred</forename>
  23.  
  24.     <surename>Flintstone</surename>
  25.  
  26.   </customer>
  27.  
  28. </customers>
  29.  
  30.  
Parsed in 0.003 seconds, using GeSHi 1.0.8.4


This is the Java stuff:

Syntax: [ Download ] [ Hide ]
Using java Syntax Highlighting
  1.  
  2. try{
  3.  
  4.                 URL url = new URL("http://warehouse.lan:3000/customers.xml");
  5.  
  6.                 URLConnection urlconn = url.openConnection();
  7.  
  8.                
  9.  
  10.                 Document doc = null;
  11.  
  12.                
  13.  
  14.                 try{
  15.  
  16.                         DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
  17.  
  18.                         DocumentBuilder db = dbf.newDocumentBuilder();
  19.  
  20.                         doc = db.parse(urlconn.getInputStream());
  21.  
  22.                        
  23.  
  24.                         // Get the initial customer nodes
  25.  
  26.                         NodeList customerNodes = doc.getElementsByTagName("customer");
  27.  
  28.                         for(int customerNodeIndex = 0;
  29.  
  30.                                 customerNodeIndex < customerNodes.getLength();
  31.  
  32.                                 customerNodeIndex++ )
  33.  
  34.                        {
  35.  
  36.                                      
  37.  
  38.                         Element customerElement = (Element)customerNodes.item( customerNodeIndex);
  39.  
  40.                        
  41.  
  42.                         NodeList transactionNodes =  customerElement.getChildNodes();
  43.  
  44.  
  45.  
  46.                       for( int transIndex = 0;
  47.  
  48.                            transIndex < transactionNodes.getLength();
  49.  
  50.                            transIndex++ )
  51.  
  52.                       {
  53.  
  54.                          
  55.  
  56.                          // Go through the elements
  57.  
  58.                          if ( transactionNodes.item( transIndex ).getNodeType() == Node.ELEMENT_NODE )
  59.  
  60.                          {
  61.  
  62.                                Element transaction = (Element)transactionNodes.item( transIndex );
  63.  
  64.                                Log.d("log: ", transaction.getNodeName() );
  65.  
  66.              
  67.  
  68.                          }
  69.  
  70.                         // Go through the values
  71.  
  72.                          if ( transactionNodes.item( transIndex ).getNodeType() == Node.TEXT_NODE )
  73.  
  74.                          {
  75.  
  76.                             Element transaction =  (Element)transactionNodes.item( transIndex );
  77.  
  78.                             Log.d("log: ", transaction.getNodeValue() );
  79.  
  80.                          }
  81.  
  82.                     }
  83.  
  84.                 }
Parsed in 0.037 seconds, using GeSHi 1.0.8.4



I get from the log:

Code: Select all
log name: birthday
log value:

log name: customer-number
log value:

log name: forename
log value:

log name: surename
log value: 

...


How to get the values, too?

Greets,

rocke
rocke
Freshman
Freshman
 
Posts: 6
Joined: Mon Jul 21, 2008 12:24 am

Top

Return to Other Coding-Problems

Who is online

Users browsing this forum: Google [Bot] and 16 guests