Избегайте повторного создания экземпляра InputSource с XPath в Java

В настоящее время я анализирую сообщения XML с помощью XPath Expression. Работает очень хорошо. Однако у меня возникает следующая проблема:

Я анализирую все данные 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 и оценить больше информации. Для этого мне пришлось в другой раз создать экземпляр источника. Это обязательно? Если я этого не сделаю, я получу исключения для закрытых потоков.

9
задан Konrad Reiche 6 April 2011 в 14:55
поделиться