SAXParserFactory.newSAXParser()
抛出ParserConfigurationException
和SAXException
。在doc中,我无法找出应该抛出SAXException
的原因。
当SAXParserFactory.newSAXParser()
抛出SAXException
?
答案 0 :(得分:1)
如上所述here:
Throws:
ParserConfigurationException - if a parser cannot be created which satisfies the requested configuration.
SAXException - for SAX errors.
所以看起来SaxParser中的每个错误都抛出SAXException而不是Parsing Configuration错误。
答案 1 :(得分:1)
正如documentation指出newSAXParser
方法是抽象的。但是,newInstance
方法会创建一个SAXParserFactoryImpl
对象extends
SAXParserFactory
类,并覆盖newSAXParser
方法。
此处的newSAXParser
方法仅投放ParserConfigurationException
,但如果您查看其中,则会捕获SAXException
,并将其转换为ParserConfigurationException
。
com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl
方法在init
构造函数中抛出此异常。
我搜索了完整的java 5源代码,并没有其他类扩展SAXParserFactory。
所以基本上,你要求的方法永远不会抛出SAXException
。
但是,如果它被抛弃,它将被捕获并转换为ParserConfigurationException
。