2012-03-29 3 views
0

Есть ли способ установить атрибуты входящей конечной точки на основе данных в событии?Как создать динамическую входящую конечную точку в Mule?

Это мой сценарий: Я получаю сообщения из очереди JMS, содержащие путь как полезную нагрузку, затем я хочу использовать конечную точку входящего файла для чтения из пути, который пришел в сообщение, и обработать результирующие файлы. Я знаю, что только исходящие конечные точки должны быть динамическими.

Любое обходное решение для решения этой проблемы?

ответ

0

Если ничего не работает, введите путь к настраиваемому компоненту и прочитайте файл в этом компоненте. Затем вы можете вернуть файл или все, что захотите, в качестве полезной нагрузки.

+0

Спасибо за ваш ответ. Я не хотел этого делать, но в конце концов я сделал, как вы сказали. Главный недостаток для меня в том, что Mule использует операцию Request. Запрос не такой гибкий, как прием, и вы не можете переопределить компонент Request в конечной точке. – Daniel

+0

Если кто-то еще хочет узнать больше об этом, зайдите на эту [почту] (http://blogs.mulesoft.org/dynamic-requesting-with-mule-esb/) – Daniel

0

Ответ на этот вопрос, несмотря на то, что OP старый, поскольку t все еще появляется в поиске. Разумным решением для этого является использование компонента сообщества модуля Required Mule, который можно добавить из обмена. MRM может использовать ресурс, который может быть любого типа ресурса, такого как файл в каталоге файлов, FTP-пути, SFTP или записи JMS Queue и т. Д. Ресурс определяет полный путь, например file: /// filepath/somefilename, поэтому имя и путь задаются динамически, а не статически, как с конечной точкой для входа в файл, поэтому в этом случае можно было бы строить из информации, полученной из очереди JMS.