Extract embedded DTD using SAX2 in Java
I need extract the DOCTYPE content of the follow XML into a String. Then I
want get the HTTP content of the external DTD, and also put it in other
String.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ONIXMessage SYSTEM
"http://www.editeur.org/onix/2.1/reference/onix-international.dtd">
<ONIXMessage>
..........
</ONIXMessage>
The string must have the content of
"http://www.editeur.org/onix/2.1/reference/onix-international.dtd"
My java code is:
public class OnixImporter extends DefaultHandler {
public OnixImporter(){super();}
public static void main (String args[]) throws Exception {
XMLReader xr = XMLReaderFactory.createXMLReader();
OnixImporter handler = new OnixImporter();
xr.setContentHandler(handler);
xr.setErrorHandler(handler);
//HOW GET the DTD????
FileReader r = new FileReader("c:\\file.xml");
xr.parse(new InputSource(r));
}
public void startDocument () {....}
public void endDocument () {....}
public void startElement (String uri, String name, String qName,
Attributes atts) {....}
public void endElement (String uri, String name, String qName) {....}
public void characters (char ch[], int start, int length) {....}
}
Thanks in advance.
No comments:
Post a Comment