Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?xml version="1.0"?>
- <!DOCTYPE foo PUBLIC "//FOO//" "foo.dtd">
- <foo>
- <bar>Value</bar>
- </foo>
- import java.io.File;
- import java.io.IOException;
- import java.io.StringReader;
- import javax.xml.parsers.DocumentBuilder;
- import javax.xml.parsers.DocumentBuilderFactory;
- import javax.xml.xpath.XPath;
- import javax.xml.xpath.XPathFactory;
- import org.w3c.dom.Document;
- import org.xml.sax.EntityResolver;
- import org.xml.sax.InputSource;
- import org.xml.sax.SAXException;
- public class Main {
- public static void main(String[] args) throws Exception {
- DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
- DocumentBuilder builder = factory.newDocumentBuilder();
- builder.setEntityResolver(new EntityResolver() {
- @Override
- public InputSource resolveEntity(String publicId, String systemId)
- throws SAXException, IOException {
- System.out.println("Ignoring " + publicId + ", " + systemId);
- return new InputSource(new StringReader(""));
- }
- });
- Document document = builder.parse(new File("src/foo.xml"));
- XPathFactory xpathFactory = XPathFactory.newInstance();
- XPath xpath = xpathFactory.newXPath();
- String content = xpath.evaluate("/foo/bar/text()", document
- .getDocumentElement());
- System.out.println(content);
- }
- }
- SAXParserFactory saxfac = SAXParserFactory.newInstance();
- saxfac.setValidating(false);
- try {
- saxfac.setFeature("http://xml.org/sax/features/validation", false);
- saxfac.setFeature("http://apache.org/xml/features/nonvalidating/load-dtd-grammar", false);
- saxfac.setFeature("http://apache.org/xml/features/nonvalidating/load-external-dtd", false);
- saxfac.setFeature("http://xml.org/sax/features/external-general-entities", false);
- saxfac.setFeature("http://xml.org/sax/features/external-parameter-entities", false);
- }
- catch (Exception e1) {
- e1.printStackTrace();
- }
- <!DOCTYPE root-element SYSTEM "filename">
Add Comment
Please, Sign In to add comment