Перейти к основному содержимому
Руководство администратора
How To статьи
Установка и настройка
Компоненты
Руководство пользователя
Начало работы

XSLT

Общее описание

Блок XSLT применяется для трансформации XML-сообщений на основе XSLT-шаблонов, которые загружаются в поле Загрузить схему или темплейт. Загруженный документ сохраняется в менеджере файлов и доступен в пользовательском интефейсе ESB в разделе Файлы и соединения.

Механизм работает следующим образом: входящее XML-сообщение обрабатывается по правилам, заданным в XSLT-файле, загруженном в менеджер файлов. Результатом может быть новый XML-документ, текст или данные в ином требуемом формате. Данный инструмент используется главным образом для интеграции разнородных систем, позволяя унифицировать формат сообщений в соответствии с загруженной схемой для последующей обработки в потоке.

Настройка блока

В данном разделе описаны параметры блока XSLT, которые необходимо заполнить при его настройке.

Базовые параметры

Название в UIНазвание атрибутаОписаниеЗначение по умолчаниюТип данных
Загрузить схему или темплейтВ данном поле вы можете выбрать или загрузить схему или шаблон, выбрав его из списка загруженных файлов или в файловом навигаторе.Файл
Allow Template From HeaderallowTemplateFromHeaderОпределяет разрешать ли использовать шаблон ресурса из заголовка или нет (по умолчанию false). Включение этого параметра позволяет указывать динамические шаблоны через заголовок сообщения. Однако это может рассматриваться как потенциальная уязвимость системы безопасности, если заголовок исходит от злоумышленника, поэтому используйте его с осторожностью.FalseЛогическое значение
Content CachecontentCacheОпределяет кэшировать ли содержимое ресурса (файл таблицы стилей) при его загрузке на старте. Если установлено значение false, файл таблицы стилей будет перезагружаться при обработке каждого сообщения.TrueЛогическое значение
Delete Output FiledeleteOutputFileЕсли у вас значение параметра Output установлено file, то этот параметр определяет, следует ли удалять выходной файл после завершения обработки. Например, если выходной файл является временным, его лучше удалять после использования.FalseЛогическое значение
Fail On Null BodyfailOnNullBodyОпределяет следует ли генерировать исключение, если тело входного сообщения пустое (NULL).TrueЛогическое значение
Outputoutput

Определяет тип вывода.

Возможные значения:

  • string

  • bytes

  • DOM

  • file

Первые три значения параметра (string, bytes, DOM) задают сохранение в памяти. Если выбрано значение file, то файл передается непосредственно в java.io.File. Для файла вы должны указать имя файла в заголовке IN с ключом XsltConstants.XSLT_FILE_NAME. Кроме того, все пути к файлу должны быть созданы заранее, в противном случае во время выполнения будет сгенерировано исключение.

Список
Transformer Cache SizetransformerCacheSizeКоличество объектов javax.xml.transform.Transformer, которые кэшируются для повторного использования, что позволяет избежать вызовов Template.newTransformer().Целочисленное значение

Расширенные параметры

Название в UIНазвание атрибутаОписаниеЗначение по умолчаниюТип данных
Lazy Start ProducerlazyStartProducer

Определяет должен ли отправитель стартовать в отложенном режиме, т.е. при получении первого сообщения. Для выявления ошибок и отладки при активации потока, выставьте значение в False.

Если поток используется редко или необходима его быстрая активация, то выставьте значение в True. Учтите, что обработка первого сообщения в этом случае будет замедлена.

FalseЛогическое значение
Entity ResolverentityResolverЗадает пользовательский обработчик, который указывает XSLT блоку, где найти дополнительные ресурсы (например, DTD, внешние схемы) для трансформации XML с использованием движка SAXSource.Строка
Error ListenererrorListener

Позволяет настроить пользовательский обработчик ошибок, перехватывающий предупреждения и ошибки во время XSLT-трансформации.

Примечание:

При указании пользовательского обработчика стандартный обработчик перестает действовать. Используйте эту опцию с осторожностью.

Строка
Result Handler FactoryresultHandlerFactoryПозволяет использовать пользовательский интерфейс для обработки результата трансформации.Строка
Transformer Factory ClasstransformerFactoryClassЗадает полное и однозначное имя пользовательского класса для XSLT трансформации.Строка
Transformer Factory Configuration StrategytransformerFactoryConfigurationStrategyЗадает стратегию настройки, применяемую к только что созданным экземплярам классов трансформации.Строка
Uri ResolveruriResolverЗадает пользовательский обработчик URI.Строка
Xslt Message LoggerxsltMessageLoggerПолучатель сообщений, сгенерированных во время преобразований XSLT.Строка
DisableddisabledОпределяет будет ли блок отключен в потоке. В активированном потоке функциональность блока не будет отрабатываться.FalseЛогическое значение