我很遗憾不得不传递Xalan一个XML文档来尝试解析我不能保证是一个XML文档。在一种情况下,用户已经输入了HTML文档。这导致XalanDefaultParsedSource :: create(...)在某些情况下花费一分钟才能最终抛出异常。如何减少尝试解析并加速发现它不是有效HTML文档的时间?
答案 0 :(得分:0)
它花费这么长时间的最可能的原因是它从网上获取东西(例如DTD);最有可能的是它正在请求W3C DTD,例如XHTML DTD。 W3C故意响应这些请求非常缓慢,因为他们的服务器无法处理负载。答案是使用一个实体解析器拦截对这些DTD的请求。