Woodstox не сообщает тип события CDATA

Я использую woodstox для чтения XML-файла, но у меня проблема с тем, что библиотека не уведомляет меня, когда читается элемент CDATA. Кто-то может мне помочь? Это мой код, и я хочу понять, где ошибка.

    XMLInputFactory2 factory = new WstxInputFactory();
    if (factory.isPropertySupported(XMLInputFactory2.P_REPORT_CDATA)) {
        factory.setProperty(XMLInputFactory2.P_REPORT_CDATA, Boolean.TRUE);
    }
    FileReader toRead = new FileReader(source);
    XMLStreamReader2 streamReader =XMLStreamReader2)factory.createXMLStreamReader(toRead);
    while (streamReader.hasNext()) {
            if (streamReader.getEventType() == XMLStreamReader.CDATA) {
                System.out.println("<![CDATA[" + streamReader.getText() + "]]>");
            }
    }

1 ответ

Решение

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

Другие вопросы по тегам