Вопрос по android, xmlreader, sax – портирование на Android: почему я получаю «Не могу создать XMLReader по умолчанию; установлено системное свойство org.xml.sax.driver? »?

3

Я портирую некоторый код Java, который отлично работал на моем рабочем столе, на Android. У меня есть следующий сегмент кода:

<code>import org.xml.sax.InputSource;
import org.xml.sax.XMLReader;
import org.xml.sax.helpers.XMLReaderFactory;
// ...
XMLReader p = XMLReaderFactory.createXMLReader();
</code>

В последней строке я получаю следующее исключение:

<code>Can't create default XMLReader; is system property org.xml.sax.driver set?
</code>

Когда я тестировал код на рабочем столе, он работал нормально. Почему я получаю это исключение на Android и как я могу это исправить? Спасибо!

Ваш Ответ

3   ответа
4

System.setProperty("org.xml.sax.driver","org.xmlpull.v1.sax2.Driver");
Большое спасибо! Ты спас мой день :)
Это сработало для меня. +1
9

обнаружил, что создание собственной фабрики и парсера, кажется, работает.

Я попытаюсь заменить это:

XMLReader p = XMLReaderFactory.createXMLReader();

С этим:

SAXParserFactory saxParserFactory = SAXParserFactory.newInstance();
SAXParser newSAXParser = saxParserFactory.newSAXParser();
XMLReader p = newSAXParser.getXMLReader();

Надеюсь это поможет :)

Похожие вопросы