В настоящее время я анализирую сообщения XML с помощью выражения XPath. Это работает очень хорошо. Однако у меня есть следующая проблема:
Я анализирую все данные XML, таким образом я создаю экземпляр для каждого вызова, сделанного для xPath.evaulate
нового InputSource
.
StringReader xmlReader = new StringReader(xml);
InputSource source = new InputSource(xmlReader);
XPathExpression xpe = xpath.compile("msg/element/@attribute");
String attribute = (String) xpe.evaluate(source, XPathConstants.STRING);
Теперь я хотел бы углубиться в свое сообщение XML и оценить больше информации. Для этого я обнаружил, что в другой раз мне нужно создать экземпляр источника. Это обязательно? Если я этого не сделаю, я получу исключение потока, закрытое.