解析したい XML ファイルは次で始まります。
<!DOCTYPE plist PUBLIC "-//...//DTD PLIST 1.0//EN" "http://www.....dtd">
そのため、SAX praser を起動すると、オンラインでこの DTD にアクセスしようとすると、java.net.UnknownHostException が発生します。
- SAX パーサーにフィードする前に XML ファイルを変更できません
- インターネットに接続していなくても実行する必要がある
DTD をロードしないように SAX パーサーの動作を変更するにはどうすればよいですか? ありがとう。
javax.xml.parsers.SAXParserFactory factory = javax.xml.parsers.SAXParserFactory.newInstance();
factory.setValidating(false);
javax.xml.parsers.SAXParser parser = factory.newSAXParser();
parser.parse(xmlFile, handler);