0
Mon code est comme:Vous avez une liste de taille zéro lorsque vous utilisez XPath pour analyser xml
import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.List;
import javax.servlet;
import org.dom4j;
import org.jaxen.JaxenException;
/**
* Servlet implementation class Search
*/
//@WebServlet("/Search")
public class Search extends HttpServlet {
private static final long serialVersionUID = 1L;
private static String xmlName = "rows.xml";
private static Document document;
/**
* @throws DocumentException
* @see HttpServlet#HttpServlet()
*/
public Search() throws DocumentException {
super();
XmlReader xmlReader = new XmlReader();
document = xmlReader.readXml();
searcher();
}
Le code qui a eu lieu la sortie inattendue:
public void searcher()
{
List nodelist = document.selectNodes("rows");
System.out.println(nodelist.size());
}
}
Mon lecteur XML:
package web.app;
import org.xml.sax.helpers.DefaultHandler;
import org.dom4j;
public class XmlReader extends DefaultHandler{
public static String filename =
"D:\\JavaWorkplace\\DataCuration\\WebContent\\rows.xml";
public Document readXml() throws DocumentException {
SAXReader saxReader = new SAXReader();
Document document = saxReader.read(filename);
System.out.println(document.content());
return document;
}
}
Le fichier XML: https://data.oregon.gov/api/views/j8eb-8um2/rows.xml?accessType=DOWNLOAD Cependant, la sortie est:
[[email protected] [Element: <response attributes: []/>]]
0
Alors, quel est le problème?
Quel framework XML utilisez-vous? Est-ce dom4j? Veuillez clarifier et fournir suffisamment de contexte pour que quelqu'un d'autre puisse tester votre code. C'est à dire. poster un [mcve] –
Oui, j'utilise dom4j. – Chen
Sans un [mcve] qui produit l'erreur, il sera difficile pour quiconque de vous aider. En fait, il y a de fortes chances pour que vous prépariez le MCVE vous-même. –