Wir haben eine Anwendung, die SiteMesh verwendet, und wenn WebLogic versucht, die TLD-Dateien zu analysieren, sieht es die DOCTYPE-Spezifikation mit dem Verweis auf die TLD-DTD unter "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd".Externe WebLogic XML-Entitätsauflösung: Gibt es einen anderen Weg als die Verwendung der XML-Registrierung?
Der Server kann keine ausgehenden Verbindungen mit dem Internet initiieren und kann daher die DTD nicht abrufen, wodurch die Bereitstellung der Anwendung fehlschlägt.
Ich verstehe, dass dieses Problem gelöst werden kann, indem Sie eine XML-Registrierung in der WebLogic-Konsole einrichten und eine lokale Datei angeben, die zurückgegeben werden soll, beispielsweise "http://java.sun.com/dtd/web-jsptaglibrary_1_2.dtd".
Gibt es eine andere Möglichkeit zu verhindern, dass der Server an das "Netz" geht, um die externe Entitätsreferenz aufzulösen? Indem man die DTD mit der Anwendung packt und irgendwie den Server informiert, um dort nach der DTD zu suchen, anstatt "da draußen"?
Ich schätze die Antwort. Der Kern des Problems bestand darin, dass die für die WebLogic-Serverkonfiguration Verantwortlichen die Änderungen der XML-Registrierung aufgrund der Beschränkungen ihres ausgehenden Zugriffs nicht vornehmen konnten. Sie wollten, dass wir JARs von Drittanbietern ändern, um die Systemkennungen aus allen DTDs zu entfernen. –