Как установить StreamSource.setReader() с пользовательским EntityResolver в XMLReader
Мне нужно получить StreamSource из моего XML-файла, однако мне также нужно использовать пользовательский EntityResolver.
У меня проблема в том, что я не могу понять, как получить XMLReader в мой источник потока.
Я делаю следующее: (документ является InputStream)
XMLReader reader = XMLReaderFactory.createXMLReader();
StreamSource doc_source = new StreamSource(doc);
reader.setEntityResolver(new PsudoEntityResolver());
doc_source.setReader(reader);
Очевидно, это не работает, потому что setReader () принимает Reader в качестве аргумента, а не XMLReader.
Любые идеи, как я могу обойти это.
1 ответ
Используйте ваш XMLReader, установите распознаватель сущностей таким, какой вы есть, но затем вызовите:
reader.parse(new InputSource(doc));