我必须用Java处理带有XSLT的DTD的XML文件。确实需要DTD,因为它包含我使用的实体的定义。(旁白:是的,将实体用于可以使用unicode的东西是个坏主意;-)当我运行转换时,它每次都从外部源下载DTD。我希望它使用XML目录来缓存DTD,所以我给TransformerFactory一个CatalogResolver作为URIResolver:URIResolvercr=newCatalogResolver();tf=TransformerFactory.newInstance();tf.setURIResolver(cr);Transformert=tf.newTransfo