Я получаю эту ошибку при разборе неправильно сгенерированного XML-документа:
org.xml.sax.SAXParseException: The value of attribute "bar" associated with an element type "foo" must not contain the '<' character.
Я знаю, что является причиной проблемы.Вот эта строка:
<foo bar="x<y">42</foo>
Это должно было быть
<foo bar="x<y">42</foo>
Я знаю, что это недопустимый XML, но мой код должен загружать и анализировать подобные файлы без присмотра и дляпо политическим причинам, возможно, не удастся убедить поставщика исправить неисправную программу, особенно когда другие программы читают файл и допускают эту ошибку.
Есть ли способ настроить Xerces, чтобы допустить это?В настоящее время это воспринимается как фатальная ошибка.Реализация ErrorHandler
для игнорирования не является удовлетворительной, потому что тогда остальная часть документа не будет проанализирована.
В качестве альтернативы, вы можете предложить другой потоковый парсер, который можно настроить, чтобы допустить эту ошибку?Использование парсера DOM неосуществимо, поскольку эти документы занимают сотни мегабайт.