Java XML SAXParser генерирует исключение NullPointerException для метода .parse (InputSource, XMLCommandsHandler) - PullRequest
0 голосов
/ 28 сентября 2010

Я получаю очень загадочное исключение NullPointerException при синтаксическом анализе потока, исходящего из сокета с javax.xml.parsers.SAXParser из jdk.

Мой InputSource - это RecordingInputStream, который я создал, расширив FilterInputStream, чтобы иметь возможность записывать в файл журнала все данные, которые я получаю в сокете, прежде чем он переходит в анализатор. Используя этот способ, я теперь вижу, что исключение NullPointerException генерируется специально, когда в потоке появляется следующий тег:

<order act="D" order_id="16508679" scn="147185767940" reason="DELETE_ORDR" who_id="90296"/>

В противном случае разбор потока работает нормально. Все остальные часто встречающиеся теги XML успешно анализируются (исключений не выдается) и соответствующие методы XMLCommandsHandler вызываются корректно.

Пожалуйста, есть какая-нибудь подсказка, почему появляется это исключение NullPointerException? В противном случае я столкнусь с альтернативой проклясть все готовые парсеры потока XML и написать свой собственный простой парсер. Надоело исследовать ошибки другого программного обеспечения или плохой дизайн: (

Ответы [ 2 ]

0 голосов
/ 20 октября 2010

Я нашел ошибку. Извините, я забыл опубликовать свой ответ, тогда я был действительно перегружен работой. Я помню сейчас, и я отвечаю на это сейчас. Это было исключение нулевого указателя в моем коде. Код, который вызывает XMLCommandsHandler. Конечно, это не имеет ничего общего с парсером SAX.

Мои извинения.

0 голосов
/ 28 сентября 2010

Возможно, вы захотите попробовать Xerces или Saxon .

...