Я создаю интеграционное решение с Java, которое фильтрует и модифицирует огромные XML-файлы. Эти XML-файлы вводятся в виде документа полезной нагрузки через решение, и для создания большого фильтра в тех частях, которые мне интересны, я хочу использовать таблицу стилей XSLT.
Моя трудность заключается в том, что стандартное Java-решение для этого не работает для меня ( XSLT-обработка с Java? ), поскольку я не хочу брать XML из системы, если он уже находится в рабочем процессе решение, и мне нужен источник вывода, чтобы остаться в рабочем процессе.
Element production = docX2.createElement("PRODUCTION");
try {
TransformerFactory factory = TransformerFactory.newInstance();
Source xslt = new StreamSource("slimmer.xslt");
Transformer transformer = factory.newTransformer(xslt);
Source text = new StreamSource((InputStream) docX1);
transformer.transform(text, new StreamResult((OutputStream) production));
} catch (Exception ex) {
Logger.getLogger(IntProcess.class.getName()).log(Level.SEVERE, null, ex);
}
root.appendChild(production);
docX1 - это входной документ XML, который проходит через решение, а docX2 - это выходной документ (оба являются классом Document в Java). Продукция - это элемент тега из docX2.