Mal angenommen, man möchte mit Java XML-Files parses, ohne diese mittels DTD zu validieren. z.B. Weil diese online verfügbar sind und der Rechner aber nicht ins Netz kann. Das sollte ja alles kein Problem sein, weil man dem SAXBuilder im Konstruktor schon sagen kann ob man validieren möchte oder nicht.
SAXBuilder builder = new SAXBuilder(false);
Aber Pustekuchen. Der SAXBuilder mag dann zwar das XML nicht validieren, aber irgendwie interessiert ihn die DTD dann doch und er versucht sie erst mal zu laden um sie dann später zu ignorieren! *arg*
Nach längerem Suchen, weil wohl noch mehr Leute ähnliche Probleme haben, bin ich dann auf folgende Lösung gestoßen:
SAXBuilder builder = new SAXBuilder();
builder.setValidation(false);
builder.setFeature("http://xml.org/sax/features/validation", false);
builder.setFeature("http://apache.org/xml/features/nonvalidating/load-dtd-grammar", false);
builder.setFeature("http://apache.org/xml/features/nonvalidating/load-external-dtd", false);
Irgendwie alles sehr unnötig.
Activity
phil
phil
phil, Jester, phil
Jester, phil
Max, honeybunny