.....и я хочу прочесть это в качестве org.w3c.dom.Document, применяя преобразова" />

Как вызвать XML <? Xml-stylesheet ...?> Директивы в Java?

373 просмотра

1 ответ

1115 Репутация автора

У меня есть файл XML, который ссылается на связанный файл XSL, например:

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="my-transform.xsl"?>

<my-root> .....

и я хочу прочесть это в качестве org.w3c.dom.Document, применяя преобразование.

Я собираюсь прочитать его, извлечь инструкцию по обработке таблицы стилей с использованием XPATH, /processing-instruction('xml-stylesheet')а затем вручную загрузить файл XSL и применить его с помощью Transformer.

Но мне кажется странным, что мне нужно сделать это вручную - есть ли удобный способ прочитать файл и автоматически применить встроенное преобразование?

ОБНОВЛЕНИЕ: спасибо @ Raphaëλ за наблюдение, TransformerFactory.getAssociatedStylesheet(...)которое идентифицирует значение таблицы XML как a Source, что довольно близко. Есть ли что-нибудь более автоматическое, чем это?

Автор: SusanW Источник Размещён: 19.07.2016 06:57

Ответы (1)


0 плюса

1115 Репутация автора

Решение

Хорошо, никто не ответил, и теперь я знаю ответ. Таблицы стилей не применяются автоматически. Но вы можете получить доступ к таблице стилей с помощью TransformerFactory.getAssociatedStylesheet(...), который определит значение xml-stylesheet как Source. Затем вы можете применить его вручную.

Спасибо Raphaëλ за указание на это.

Автор: SusanW Размещён: 01.09.2016 11:12
Вопросы из категории :
32x32