Как установить StreamSource.setReader () с пользовательским EntityResolver в XMLReader - PullRequest
0 голосов
/ 08 декабря 2011

Мне нужно получить StreamSource из моего xml-файла, однако мне также нужно использовать пользовательский EntityResolver.

Проблема, с которой я столкнулся, заключается в том, что я не могу понять, как получить XMLReader в мой источник потока.

Я делаю следующее: (doc является InputStream)

XMLReader reader = XMLReaderFactory.createXMLReader();
StreamSource doc_source = new StreamSource(doc);
reader.setEntityResolver(new PsudoEntityResolver());
doc_source.setReader(reader);

Очевидно, это не работает, потому что setReader () принимает Reader в качестве аргумента, а не XMLReader.

Любые идеи, как я могу обойти это.

1 Ответ

0 голосов
/ 08 декабря 2011

Используйте ваш XMLReader, установите распознаватель сущностей таким, какой вы есть, но затем вызовите:

reader.parse(new InputSource(doc));
...