我们有一个使用SiteMesh的应用程序,当WebLogic尝试解析TLD文件时,它会在“http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd”处看到DOCTYPE规范,其中包含对TLD DTD的引用。WebLogic XML外部实体解析:除了使用XML注册表之外,还有其他方法吗?
服务器无法启动到Internet的出站连接,因此无法检索导致部署应用程序失败的DTD。
我知道这个问题可以通过在WebLogic控制台中设置一个XML注册表来解决,并且在尝试解析时指定一个返回的本地文件,例如“http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd”。
是否有任何其他方式来防止服务器走出去'网络来解决外部实体引用?通过将DTD与应用程序一起打包,并以某种方式通知服务器在那里寻找那个DTD,而不是“在那里”?
我很欣赏这种回应。问题的核心是那些负责WebLogic服务器配置的人拒绝通过出站访问限制来改变XML注册表的更改。他们希望我们修改第三方JAR以从所有DTD中删除系统标识符。 – 2013-03-20 21:35:42