【发布时间】:2011-07-09 14:30:04
【问题描述】:
运行 XML 阅读器的开头时出现错误:
public static void main(String[] args)
{
System.out.println("XML Reader");
try
{
DocumentBuilderFactory docFactory = DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docFactory.newDocumentBuilder();
Document doc = docBuilder.parse("database.xml");
//normalize text
doc.getDocumentElement().normalize();
System.out.println("The root of this doc is "+doc.getDocumentElement().getNodeName());
NodeList listOfAddresses = doc.getElementsByTagName("address");
int totalAddresses = listOfAddresses.getLength();
System.out.println(totalAddresses+" addresses in "+ doc.getDocumentElement().getNodeName());
//main loop
for(int i = 0; i<listOfAddresses.getLength(); i++)
{
Node items = listOfAddresses.item(i);
if(items.getNodeType() == Node.ELEMENT_NODE)
{
System.out.println("Address #"+i);
Element element = (Element)items;
NodeList nameList = element.getElementsByTagName("name");
Element nameElement = (Element)nameList.item(0);
NodeList nameOutput = nameElement.getChildNodes();
System.out.println("name: "+nameElement);
}
}
}
catch(SAXParseException err)
{
System.out.println("Sax Parse Exception error on line "+err.getLineNumber());
}
catch(SAXException e)
{
System.out.println("SAX Exception error");
Exception x = e.getException();
((x == null) ? e : x).printStackTrace();
}
catch(Throwable t)
{
System.out.println("Trowable error");
t.printStackTrace();
}
}
netbeans 给我以下输出:
跑: XML 阅读器 该文档的根是数据库 数据库中有 2 个地址 java.lang.NullPointerException 地址#0 可追踪错误 在 xmlreader.XMLreader.main(XMLreader.java:42)有人可以帮我解决这个问题吗?
【问题讨论】:
-
第 42 行是哪一行?知道这可能对我们有所帮助。
-
始终在源代码中注明异常发生的行。
标签: java xml xmlreader datareader