JAXP (Java API for XML) provides us with the capability to parse XML documents using a DOM parser.
The following code sample shows a simple parsing using the JAXP DOM parser.
package com.abelski.samples;
import java.io.IOException;
import java.net.URL;
import java.io.InputStream;
import java.net.HttpURLConnection;
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.ParserConfigurationException;
import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
import org.xml.sax.SAXException;
public class Sample
{
public static void main(String args[])
{
InputStream is = null;
HttpURLConnection con = null;
try
{
URL url = new URL("https://api.twitter.com/1/statuses/user_timeline.xml?screen_name=lifemichael");
con = (HttpURLConnection)url.openConnection();
con.setRequestMethod("GET");
con.connect();
is = con.getInputStream();
DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
DocumentBuilder builder = factory.newDocumentBuilder();
Document doc = builder.parse(is);
NodeList list = doc.getElementsByTagName("text");
int length = list.getLength();
for(int i=0; i<length; i++)
{
System.out.println("\n\n"+
list.item(i).getFirstChild().getNodeValue());;
}
}
catch(IOException e)
{
e.printStackTrace();
}
catch(ParserConfigurationException e)
{
e.printStackTrace();
}
catch(SAXException e)
{
e.printStackTrace();
}
finally
{
if(is!=null)
{
try
{
is.close();
}
catch(IOException e)
{
e.printStackTrace();
}
}
if(con!=null)
{
con.disconnect();
}
}
}
}
The following video clip provides more explanation while overviewing the code sample and showing its execution.







