List of usage examples for org.jdom2.input SAXBuilder setSAXHandlerFactory
public void setSAXHandlerFactory(final SAXHandlerFactory factory)
From source file:LineNumberSAXBuilderDemo.java
License:Open Source License
public static void main(String[] args) throws Exception { SAXBuilder builder = new SAXBuilder(); builder.setSAXHandlerFactory(LineNumberSAXHandler.SAXFACTORY); Document doc = builder.build(new StringReader(xml)); for (Iterator<LineNumberElement> iter = doc.getDescendants(Filters.fclass(LineNumberElement.class)); iter .hasNext();) {/*from w w w . j ava 2 s .co m*/ LineNumberElement e = iter.next(); System.out.println(e.getName() + ": lines " + e.getStartLine() + " to " + e.getEndLine()); } }
From source file:com.googlesource.gerrit.plugins.manifest.ManifestXml.java
License:Apache License
public ManifestXml(String xml) throws IOException, ParserConfigurationException, SAXException, JDOMException { // Insert a unique identifier for entity definitions to prevent them from // getting expanded during the parse genReplacementText(xml);//from w w w. j a v a2s . com xml = xml.replaceAll("&([^;]*);", replacementText + "$1;"); SAXBuilder builder = new SAXBuilder(); builder.setSAXHandlerFactory(new SAXHandlerFactory() { @Override public SAXHandler createSAXHandler(JDOMFactory jdomFactory) { return new SAXHandler() { @Override public void attributeDecl(String eName, String aName, String type, String valueDefault, String value) { dtdAttributes.add(new DTDAttribute(eName, aName, type, valueDefault, value)); super.attributeDecl(eName, aName, type, valueDefault, value); } }; } }); builder.setExpandEntities(false); doc = builder.build(new InputSource(new StringReader(xml))); }