Я работаю над случаем, когда мне нужно очистить недопустимые символы XML, полученные от веб-службы SharePoint.Я знаю, что исправление источника является правильным решением, однако об этой проблеме было сообщено еще в 2008 году, и я еще не обнаружил, что Microsoft выпустила исправление для него.
Пока я звоню в ИнтернетСервис с использованием интерфейса провайдера от JAX-WS.Я получаю Source с возвращенным XML просто отлично, но я застрял, пытаясь найти способ преобразовать источник в действительный XML DOM.
Я получаю исключение, жаловавшееся на недопустимый символ XML каждый раз, когда я пытаюсьчто-то вроде следующего псевдокода:
public void xmlTranform(javax.xml.transform.Source source) {
StreamResult sr = new StreamResult(new java.io.StringWriter());
Transformer tf = TransformerFactory.newInstance().newTransformer();
tf.transform(source, sr);
...
Можно ли создать собственный FilterReader и вставить его в Преобразование?
Или я могу настроить Marshaller, может быть?
Как лучше всего внедрить код в преобразование, чтобы отфильтровать эти недопустимые символы?