All pastes #355225 Raw Edit

xmlresolver dtd java

public java v1 · immutable
·published 2007-02-14 11:02 UTC
rendered paste body
/* * XPontusCatalogResolver.java * * Created on February 14, 2007, 3:32 AM * * To change this template, choose Tools | Template Manager * and open the template in the editor. */package net.sf.xpontus.cache;import net.sf.xpontus.constants.XPontusConstants;import org.apache.xerces.impl.dtd.DTDGrammar;import org.apache.xerces.impl.dtd.XMLDTDLoader;import org.apache.xerces.util.XMLResourceIdentifierImpl;import org.apache.xerces.xni.XMLResourceIdentifier;import org.apache.xerces.xni.parser.XMLInputSource;import org.apache.xml.resolver.Catalog;import org.apache.xml.resolver.CatalogEntry;import org.apache.xml.resolver.CatalogManager;import org.xml.sax.InputSource;import java.io.File;import java.io.FileReader;import java.net.URL;import java.util.Vector;/** * * @author Owner */public class XPontusCatalogResolver extends CatalogManager {    private static XPontusCatalogResolver resolver;    private CatalogManager catalogManager;    private Catalog catalog;    public static void main(String[] argv) throws Exception {        System.setProperty("xml.catalog.staticCatalog", "true");        System.setProperty("xml.catalog.files",            "C:\\tests\\docbook-xml-4.4\\docbook.cat");        CatalogManager manager = new CatalogManager();        Catalog catalog = manager.getCatalog();        String pubid = argv[0];        String uri = argv[1];        pubid = pubid.substring(1, pubid.length() - 1);        String s = manager.getCatalog().resolvePublic(pubid, uri);        s = s.substring(5, s.length());        InputSource is = new InputSource(new FileReader(s));        XMLResourceIdentifier identifier = new XMLResourceIdentifierImpl();        identifier.setPublicId("-//OASIS//DTD DocBook XML V4.4//EN");        identifier.setLiteralSystemId(s);        identifier.setBaseSystemId(s);        DTDGrammar grammar = (DTDGrammar) new XMLDTDLoader().loadGrammar(new XMLInputSource(                    identifier));    }}