Я получаю очень грязное исключение NullPointerException при анализе потока, исходящего из сокета с javax.xml.parsers.SAXParser jdk.Java XML SAXParser бросает NullPointerException на метод .parse (InputSource, XMLCommandsHandler)
My InputSource - это RecordingInputStream, который я создал, расширив FilterInputStream, чтобы иметь возможность записывать в файл журнала все данные, которые я получаю в сокете, прежде чем он переходит к анализатору. Используя этот способ теперь я могу видеть, что NullPointerException выбрасывается именно тогда, когда следующий тег появляется в потоке:
<order act="D" order_id="16508679" scn="147185767940" reason="DELETE_ORDR" who_id="90296"/>
В противном случае синтаксический потока работает нормально. Все другие теги XML, которые часто появляются, успешно обрабатываются (исключений не выбрасывают), и соответствующие методы XMLCommandsHandler действительно вызываются правильно.
Пожалуйста, подскажите, почему возникает это NullPointerException? В противном случае я столкнулся с альтернативой проклинать все готовые синтаксические анализаторы потока XML и написать собственный простой парсер. Устали от изучения ошибок другого Software, или плохого дизайна :(
Есть вы попытались воспроизвести проблему, используя только ввод, который вы используете e идентифицировано? –
Опубликуйте свой обработчик, который должен иметь дело с этим тегом, и трассировку стека. –