JMS
Общее описание
Блок JMS позволяет отправлять сообщения в очередь JMS или в топик JMS (или использовать их из него).
Блок JMS может использоваться в качестве:
-
блока – отправителя
-
блока – получателя.
Настройка блока
В данном разделе описаны параметры блока JMS, которые необходимо заполнить при настройке и примеры заполнения значений этих параметров.
Базовые параметры блока JMS
| Название в UI | Название атрибута | Обязательный | Описание | Значение по умолчанию | Тип данных | ||
|---|---|---|---|---|---|---|---|
| Connection | connection | Позволяет выбрать предсозданное соединение или создать новое с помощью визарда Connection Manager. | Список | ||||
| Destination Type | destinationType | Тип точки подключения. Возможные значения:
| queue | Список | |||
| Destination Name | destinationName | Да | Название очереди или топика. | Строка | |||
| Client Id | clientId | Идентификатор клиента JMS. Примечание: Идентификатор клиента, если он задан, должен быть уникальным и может использоваться только одним экземпляром подключения JMS. Обычно он требуется только для подписки на топики с длительным сроком действия с JMS 1.1. | Строка | ||||
| Disable Reply To | disableReplyTo | Указывает будут ли игнорироваться заголовки JMSReplyTo в сообщениях. Если значение равно True, ответы адресату, указанному в заголовке JMSReplyTo, не будут отправляться. Вы можете использовать эту опцию если не хотите, чтобы ответное сообщение отправлялось автоматически, что имеются другие компоненты, которые формируют ответное сообщение. | False | Логическое значение | |||
| Durable Subscription Name | durableSubscriptionName | Имя постоянного подписчика для указания постоянных подписок. Чтобы пользоваться этой опцией, необходимо задать значение параметру Client ID. | Строка | ||||
| Jms Message Type | jmsMessageType | Позволяет принудительно использовать определенную реализацию jakarta.jms.Message для отправки сообщений JMS. По умолчанию тип сообщения, который будет использоваться, определяется исходя из типа In body. Возможные значения:
| Список | ||||
| Reply To | replyTo | Задает явного адресата ReplyTo (переопределяет любое входящее значение Message.getJMSReplyTo() в получателе). | Строка | ||||
| Test Connection On Startup | testConnectionOnStartup | Указывает, следует ли проверять соединение при запуске. Это гарантирует, что при запуске системы все пользователи JMS будут иметь действующее соединение с JMS-брокером. Если соединение не может быть предоставлено, то при запуске генерируется исключение. Это гарантирует то, что система не будет запущена с неудачными подключениями. Опция работает как для получателя, так и для отправителя. | False | Логическое значение | |||
| Acknowledgement Mode Name | acknowledgementModeName | Режим подтверждения JMS. Возможные значения:
| AUTO_ACKNOWLEDGE | Список | |||
| Artemis Consumer Priority | artemisConsumerPriority | Приоритеты пользователей позволяют гарантировать, что пользователи с высоким приоритетом получают сообщения, пока они активны. Обычно активные пользователи, подключенные к очереди, получают сообщения из нее в циклическом режиме. При использовании приоритетов пользователей сообщения доставляются в циклическом режиме, если существует несколько активных пользователей с одинаковым высоким приоритетом. Сообщения будут отправляться потребителям с более низким приоритетом только в том случае, если у потребителей с более высоким приоритетом исчерпан лимит использования сообщений или эти потребители с более высоким приоритетом отказались принять сообщение, например, потому, что оно не соответствует критериям каких-либо средств выбора, связанных с потребителем. | Целое число | ||||
| Async Consumer | asyncConsumer | Определяет будет ли JmsConsumer обрабатывать поток асинхронно. Если этот параметр включен, то JmsConsumer может получать следующее сообщение из очереди JMS, в то время как предыдущее сообщение обрабатывается асинхронно (механизмом асинхронной маршрутизации). Это означает, что сообщения могут обрабатываться не на 100% строго по порядку. Если этот параметр отключен, то передача сообщения будет полностью завершена до того, как JmsConsumer получит следующее сообщение из очереди JMS. Примечание: Если параметр Transacted установлен в True, то asyncConsumer=True не включит асинхронный режим, так как транзакция должна выполняться синхронно. | False | Логическое значение | |||
| Auto Startup | autoStartup | Указывает, должен ли контейнер-потребитель автоматически запускаться. | True | Логическое значение | |||
| Cache Level | cacheLevel | Устанавливает уровень кэширования по идентификатору для базовых ресурсов JMS. Смотрите также параметр Cache Level Name. | Целое число | ||||
| Cache Level Name | cacheLevelName | Задает уровень кэширования по имени для базовых ресурсов JMS. Возможные значения:
| CACHE_AUTO | Список | |||
| Concurrent Consumers | concurrentConsumers | Указывает количество одновременных потребителей по умолчанию при использовании JMS (не для запроса/ответа через JMS). Также для управления динамическим увеличением/уменьшением масштабирования потоков используется параметр Max Messages Per Task. При выполнении запроса/ответа через JMS для управления количеством одновременных потребителей в прослушивателе ответных сообщений используется опция Reply To Concurrent Consumers. | 1 | Целое число | |||
| Max Concurrent Consumers | maxConcurrentConsumers | Указывает максимальное количество одновременных потребителей при использовании JMS (не для запроса/ответа через JMS). Также для управления динамическим увеличением/уменьшением масштабирования потоков используется параметр Max Messages Per Task. При выполнении запроса/ответа через JMS для управления количеством одновременных потребителей в прослушивателе ответных сообщений используется опция Reply To Max Concurrent Consumers. | Целое число | ||||
| Reply To Delivery Persistent | replyToDeliveryPersistent | Определяет, следует ли использовать постоянную доставку ответов по умолчанию. | True | Логическое значение | |||
| Selector | selector | Устанавливает используемый селектор JMS. | Строка | ||||
| Subscription Durable | subscriptionDurable | Определяет, следует ли сделать подписку долговременной. Имя долговременной подписки, которое будет использоваться, можно указать с помощью свойства Subscription Name. Установите для этого значения значение True, чтобы зарегистрировать долговременную подписку в сочетании со значением Subscription Name, если только имя класса вашего прослушивателя сообщений не подходит в качестве имени подписки. Параметр есть смысл задавать только при прослушивании топика. | False | Логическое значение | |||
| Subscription Name | subscriptionName | Имя подписки. Оно будет применяться для топика с общей или долговременной подпиской. Имя подписки должно быть уникальным в пределах идентификатора клиента JMS для этого клиента. По умолчанию используется имя класса указанного прослушивателя. Примечание: Для каждой подписки разрешен только один единовременный потребитель (который используется по умолчанию в этом контейнере для прослушивания сообщений), за исключением общей подписки (для которой требуется JMS 2.0). | Строка | ||||
| Subscription Shared | subscriptionShared | Определяет следует ли делать подписку общей. Имя общей подписки можно указать с помощью параметра Subscription Name. Установите для этого параметра значение True, чтобы зарегистрировать общую подписку в сочетании со значением Subscription Name (если только имя вашего класса прослушивателя сообщений не подходит в качестве имени подписки). | False | Логическое значение | |||
| Delivery Delay | deliveryDelay | Устанавливает задержку доставки, которая будет использоваться для отправки вызовов JMS. Для этого параметра требуется брокер, совместимый с JMS 2.0. | -1 | Целое число | |||
| Delivery Mode | deliveryMode | Указывает используемый режим доставки. Возможные значения определены в jakarta.jms.Delivermode: NON_PERSISTENT = 1 и PERSISTENT = 2. Возможные значения:
| Список | ||||
| Delivery Persistent | deliveryPersistent | Задает, используется ли непрерывная доставка по умолчанию. | True | Логическое значение | |||
| Explicit Qos Enabled | explicitQosEnabled | Определяет, следует ли использовать при отправке сообщений свойства Delivery Mode, Priority или Time To Live. Параметры Delivery Mode, Priority и Time To Live применяются к текущей конечной точке. | False | Логическое значение | |||
| Format Date Headers To Iso8601 | formatDateHeadersToIso8601 | Определяет, следует ли форматировать даты JMS в соответствии со стандартом ISO 8601. | False | Логическое значение | |||
| Preserve Message Qos | preserveMessageQos | Включает отправку сообщений с использованием настроек QoS, указанных в сообщении, а не настроек QoS на конечной точке JMS. Следующие три заголовка обрабатываются: JMSPriority, JMSDeliveryMode и JMSExpiration. Вы можете указать все или только некоторые из них. Если они не указаны, то будут применены значения из конечной точки. Таким образом, при использовании этой опции заголовки переопределяют значения из конечной точки. Опция Explicit Qos Enabled, напротив, будет использовать только параметры, установленные в конечной точке, а не значения из заголовка сообщения. | False | Логическое значение | |||
| Priority | priority | Приоритет сообщения при отправке (где 1 - самый низкий приоритет, а 9 - самый высокий). Для того, чтобы этот параметр работал, также должна быть включена опция Explicit Qos Enabled. Возможные значения:
| 4 | Список | |||
| Reply To Concurrent Consumers | replyToConcurrentConsumers | Максимальное количество одновременных потребителей при использовании запроса/ответа через JMS. Также для управления динамическим увеличением/уменьшением масштабирования потоков применяется параметр Max Messages Per Task. | 1 | Целое число | |||
| Reply To Max Concurrent Consumers | replyToMaxConcurrentConsumers | Максимальное количество одновременных пользователей при использовании запроса/ответа через JMS. Также для управления динамическим увеличением/уменьшением масштабирования потоков применяется параметр Max Messages Per Task. | Целое число | ||||
| Reply To On Timeout Max Concurrent Consumers | replyToOnTimeoutMaxConcurrentConsumers | Указывает максимальное количество одновременных пользователей для продолжения маршрутизации по истечении времени ожидания при использовании запроса/ответа через JMS. | 1 | Целое число | |||
| Reply To Override | replyToOverride | Явное указание адресата ReplyTo в сообщении JMS, которое переопределяет параметр replyTo. Это полезно, если вы хотите переслать сообщение в удаленную очередь и получить ответное сообщение от адресата ReplyTo. | Строка | ||||
| Reply To Type | replyToType | Явное определение того, какой тип стратегии будет использоваться для очередей replyTo при выполнении запроса/ответа через JMS. По умолчанию будут использоваться временные очереди. Однако, если replyTo задан, то по умолчанию используется общий доступ. Этот параметр позволяет использовать эксклюзивные очереди вместо общих. Возможные значения:
| Список | ||||
| Request Timeout | requestTimeout | Время ожидания ответа при использовании InOut Exchange Pattern (в миллисекундах). Значение по умолчанию равно 20 секундам. Вы можете включить заголовок CamelJmsRequestTimeout, чтобы переопределить это значение тайм-аута, настроенное для конечной точки, и, таким образом, задать индивидуальные значения тайм-аута для каждого сообщения. Смотрите также параметр Request Timeout Checker Interval. | 20000 | Длинное целое число | |||
| Time To Live | timeToLive | При отправке сообщений указывает время жизни сообщения в миллисекундах. | -1 | Целое число | |||
| Error Handler Logging Level | errorHandlerLoggingLevel | Уровень логирования ErrorHandler по умолчанию для логирования неперехваченных исключений. Возможные значения:
| WARN | Список | |||
| Error Handler Log Stack Trace | errorHandlerLogStackTrace | Определяет следует ли логировать трассировку стека или нет, с помощью обработчика ошибок по умолчанию. | True | Логическое значение | |||
| Transacted | transacted | Включает транзакционный режим. | False | Логическое значение | |||
| Transacted In Out | transactedInOut | Указывает, будут ли операции InOut (ответ на запрос) по умолчанию использоваться в режиме транзакций. | False | Логическое значение | |||
Расширенные параметры блока JMS
| Название в UI | Название атрибута | Обязательный | Описание | Значение по умолчанию | Тип данных | |
|---|---|---|---|---|---|---|
| Accept Messages While Stopping | acceptMessagesWhileStopping | Указывает, будет ли потребитель принимать сообщения во время остановки. Вы можете пользоваться этой опцией, если вы запускаете и останавливаете маршруты JMS во время выполнения, пока в очереди еще есть сообщения. Если этот параметр имеет значение False, и вы останавливаете маршрут JMS, то сообщения могут быть отклонены, и JMS-брокеру придется предпринять повторную попытку доставки, которая снова может быть отклонена, и в конечном итоге сообщение может быть перемещено в очередь неиспользуемых писем на JMS-брокере. Чтобы избежать этого, рекомендуется включить эту опцию. | False | Логическое значение | ||
| Allow Reply Manager Quick Stop | allowReplyManagerQuickStop | Эта функция быстрой остановки включена по умолчанию в обычных потребителях JMS, но, чтобы включить ее для менеджеров ответов, вы должны установить этот параметр в True. | False | Логическое значение | ||
| Consumer Type | consumerType | Тип потребителя. Значение параметра определяет, какой прослушиватель Spring JMS использовать. Возможные значения:
| Default | Список | ||
| Default Task Executor Type | defaultTaskExecutorType | Определяет, какой тип TaskExecutor по умолчанию следует использовать в DefaultMessageListenerContainer для конечных точек потребителей, так и для replyTo потребителей, использующихся для конечных точек поставщиков.. Если этот параметр не задан, по умолчанию используется предыдущее поведение, при котором для конечных точек-потребителей используется кэшированный пул потоков, а для получателей ответов - SimpleAsync. Рекомендуется использовать ThreadPool для уменьшения количества ненужных потоков в гибких конфигурациях с динамически увеличивающимися и уменьшающимися параллельными потребителями. Возможные значения:
| Список | |||
| Eager Loading Of Properties | eagerLoadingOfProperties | Позволяет оперативно загружать свойства JMS и полезную нагрузку сразу после загрузки сообщения, что, как правило, неэффективно, поскольку свойства JMS могут и не требоваться, но иногда позволяет заблаговременно выявлять любые проблемы с базовым поставщиком JMS и использованием свойств JMS. Смотрите также параметр Eager Poison Body. | False | Логическое значение | ||
| Eager Poison Body | eagerPoisonBody | Если включена функция Eager Loading Of Properties, а полезная нагрузка сообщения JMS (тело JMS или свойства JMS) является некорректной (не может быть прочитана / сопоставлена), то вместо этого задайте этот текст в качестве тела сообщения, чтобы сообщение могло быть обработано (причина ошибки уже сохранена как исключение в Exchange). Это можно отключить, установив значение Eager Poison Body=False. Смотрите также параметр Eager Loading Of Properties. | Poison JMS message due to ${exception.message} | Строка | ||
| Exception Handler | exceptionHandler | Пользовательский обработчик исключений. | Строка | |||
| Exchange Pattern | exchangePattern | Устанавливает стиль взаимодействия с присоединенной частью потока. Возможные значения:
| Список | |||
| Expose Listener Session | exposeListenerSession | Указывает, должен ли быть запущен сессия прослушивания при получении сообщений. | False | Логическое значение | ||
| Reply To Consumer Type | replyToConsumerType | Пользовательский тип потребителя ответа при выполнении сценария запрос/ответ. Возможные значения:
| Default | Список | ||
| Reply To Same Destination Allowed | replyToSameDestinationAllowed | Разрешено ли потебителю JMS отправлять ответное сообщение в тот же пункт назначения, который пользователь использует для отправки. Это предотвращает бесконечный цикл, поскольку пользователь получает и отправляет обратно одно и то же сообщение самому себе. | False | Логическое значение | ||
| Task Executor | taskExecutor | Позволяет вам указать пользовательского исполнителя задачи для использования сообщений. | Строка | |||
| Allow Additional Headers | allowAdditionalHeaders | Этот параметр используется для разрешения дополнительных заголовков, которые могут иметь недопустимые значения в соответствии со спецификацией JMS. Например, некоторые системы обмена сообщениями, такие как WMQ, делают это с именами заголовков, используя префикс JMS_IBM_MQMD_, содержащий значения с байтовым массивом или другими недопустимыми типами. Вы можете указать несколько имен заголовков, разделенных запятой, и использовать их в качестве суффикса для сопоставления с подстановочными знаками. | Строка | |||
| Allow Null Body | allowNullBody | Следует ли разрешить отправку сообщений без текста. Если этот параметр имеет значение false, а текст сообщения равен null, то генерируется исключение JMSException. | True | Логическое значение | ||
| Always Copy Message | alwaysCopyMessage | Если значение равно True, копия сообщения JMS будет создаваться всегда, когда оно будет передано производителю для отправки. Копирование сообщения необходимо в некоторых ситуациях, например, когда задано значение Reply To Destination Selector Name. Примечание: Если задано значение параметра Reply To Destination Selector Name, то значение параметра Always Copy Message будет автоматически установлено в True. | False | Логическое значение | ||
| Correlation Property | correlationProperty | При использовании шаблона обмена InOut используйте это свойство JMS вместо JMS-свойства JMS Correlation ID для корреляции сообщений. Если установить, что сообщения будут коррелироваться исключительно на основе значения этого свойства, свойство JMS Correlation ID будет проигнорировано. | Строка | |||
| Disable Time To Live | disableTimeToLive | Задает принудительное отключение времени жизни сообщения. | False | Логическое значение | ||
| Force Send Original Message | forceSendOriginalMessage | Если значение параметра Map Jms Message=False, то при изменении заголовков (get или set) во время маршрута создается новое JMS-сообщение для отправки новому получателю JMS Если этот параметр установлен в значение True, то будет отправляться исходное полученное JMS-сообщение. | False | Логическое значение | ||
| Include Sent JMSMessage ID | includeSentJMSMessageID | Применимо только при отправке в получателю JMS с использованием InOnly (например, "запустить и забыть"). Включение этой опции добавляет в данные потока фактический идентификатор JMSMessageID, который использовался клиентом JMS при отправке сообщения получателю JMS. | False | Логическое значение | ||
| Lazy Start Producer | lazyStartProducer | Определяет должен ли отправитель стартовать в отложенном режиме (при получении первого сообщения). Отложенный запуск можно использовать в ситуациях, когда запуск отправителя может завершиться неудачей и привести к сбою при запуске маршрута. Если отложить запуск, то сбой при запуске можно будет обработать во время маршрутизации сообщений с помощью обработчиков ошибок маршрутизации. Обратите внимание, что при обработке первого сообщения создание и старт отправителя могут занять некоторое время и увеличить общее время обработки. | False | Логическое значение | ||
| Reply To Cache Level Name | replyToCacheLevelName | Устанавливает уровень кэширования по имени для получателя ответа при выполнении запроса/ответа через JMS. Этот параметр применяется только при использовании фиксированных очередей ответов (не временных). По умолчанию будет применено значение CACHE_CONSUMER для эксклюзивного или общего доступа с заданным именем Reply To Selector Name и CACHE_SESSION для общего доступа без Reply To Selector Name Примечание: При использовании временных очередей параметр CACHE_NONE не разрешен, и следует применять такие значения, как CACHE_CONSUMER или CACHE_SESSION. Возможные значения:
| Список | |||
| Reply To Destination Selector Name | replyToDestinationSelectorName | Устанавливает селектор JMS с использованием фиксированного имени, которое будет использоваться, чтобы вы могли отфильтровывать свои собственные ответы от других при использовании общей очереди (то есть, если вы не используете временную очередь ответов). | Строка | |||
| Stream Message Type Enabled | streamMessageTypeEnabled | Определяет, включен ли тип StreamMessage или нет. Полезная нагрузка сообщений потокового типа, такая как файлы, InputStream и т.д., будут отправляться либо как BytesMessage, либо как StreamMessage. Этот параметр определяет, какой тип будет использоваться. По умолчанию используется функция BytesMessage, которая принудительно считывает всю полезную информацию сообщения в память. При включении этой опции полезная информация сообщения считывается в память по частям, а затем каждая часть записывается в StreamMessage, пока не закончатся данные. | False | Логическое значение | ||
| Allow Serialized Headers | allowSerializedHeaders | Определяет, включать или не включать сериализованные заголовки. Применяется только в том случае, если transferExchange имеет значение True. Для этого требуется, чтобы объекты были сериализуемыми. Все несериализуемые объекты будут исключены и зарегистрированы на уровне WARN. | False | Логическое значение | ||
| Artemis Streaming Enabled | artemisStreamingEnabled | Возможна ли оптимизация для режима потоковой передачи Apache Artemis. Это может снизить нагрузку на память при использовании Artemis с типами потоковых сообщений JMS. Эта опция должна быть включена только в том случае, если используется Apache Artemis. | False | Логическое значение | ||
| Async Start Listener | asyncStartListener | Следует ли запускать асинхронный прослушиватель сообщений JmsConsumer при запуске маршрута. Например, если JmsConsumer не может установить соединение с удаленным JMS-брокером, то он может заблокироваться при повторной попытке и/или переключиться на резервный компонент. Это приведет к блокировке потока при запуске маршрутов. Установив для этого параметра значение True, вы разрешите запуск маршрутов, в то время как JmsConsumer подключается к JMS брокеру с помощью выделенного потока в асинхронном режиме. Если используется этот параметр, то имейте в виду, что если соединение установить не удалось, то регистрируется исключение на уровнеWARN, и получатель не сможет получать сообщения; затем вы можете перезапустить маршрут для повторной попытки соединения. | False | Логическое значение | ||
| Async Stop Listener | asyncStopListener | Определяет следует ли асинхронно останавливать прослушиватель сообщений JmsConsumer при остановке маршрута. | False | Логическое значение | ||
| Destination Resolver | destinationResolver | Подключаемый интерфейс стратегии для разрешения назначений JMS (например, для поиска реального места назначения в реестре JNDI). | Строка | |||
| Error Handler | errorHandler | Обработчик ошибок , который будет вызываться в случае возникновения каких-либо неперехваченных исключений при обработке сообщения. По умолчанию эти исключения будут регистрироваться на уровне WARN, если обработчик ошибок не задан. Вы можете настроить уровень ведения журнала и то, следует ли регистрировать трассировки стека. | Строка | |||
| Exception Listener | exceptionListener | Задает прослушиватель исключений JMS, который должен получать уведомления о любых базовых исключениях JMS. | Строка | |||
| Header Filter Strategy | headerFilterStrategy | Имя пользовательской стратегии HeaderFilterStrategy для фильтрации заголовка в сообщении Camel и обратно. | Строка | |||
| Idle Consumer Limit | idleConsumerLimit | Ограничивает количество потребителей, которые могут простаивать одновременно. | 1 | Целое число | ||
| Idle Task Execution Limit | idleTaskExecutionLimit | Определяет предел числа запусков в режиме ожидания задачи получения без результата. Если этот предел достигнут, задача завершит работу и передаст получение другим выполняющимся задачам (в случае динамического планирования. | 1 | Целое число | ||
| Include All JMSXProperties | includeAllJMSXProperties | Задает следует ли включать все свойства с префиксом JMSX при преобразовании из JMS в контекст. Установка значения True для этого параметра будет включать такие свойства, как JMSXAppID, JMSXUserID и т.д. Примечание: Если вы используете пользовательскую стратегию Header Filter Strategy, то этот параметр неприменим. | False | Логическое значение | ||
| Jms Key Format Strategy | jmsKeyFormatStrategy | Подключаемая стратегия для кодирования и декодирования ключей JMS, чтобы они соответствовали спецификации JMS. Система предоставляет две готовые реализации: default и passthrough. Стратегия default предусматривает безопасное использование точек и дефисов. Стратегия passthrough оставляет ключ как есть. Может использоваться для JMS-брокеров, которым не важно, содержат ли ключи заголовка JMS недопустимые символы. Вы можете предоставить свою собственную реализацию стратегии и ссылаться на нее, используя обозначение #. Возможные значения:
| Список | |||
| Map Jms Message | mapJmsMessage | Задает, будут ли автоматически сопоставляться полученное JMS-сообщение с подходящим типом полезной нагрузки, например, jakarta.jms.TextMessage в строку и т.д. | Логическое значение | |||
| Max Messages Per Task | maxMessagesPerTask | Количество сообщений для каждой задачи. Значение «-1» означает отсутствие ограничений. Если вы используете диапазон для одновременных потребителей (например, min max), то этот параметр можно использовать для установки значения, равного, например, 100, чтобы контролировать, насколько быстро количество потребителей будет убывать, когда требуется меньше работы. | -1 | Целое число | ||
| Message Converter | messageConverter | Пользовательский преобразователь сообщений Spring org.springframework.jms.support.converter.MessageConverter, который позволит контролировать как сопоставлять сообщение отправляемые/получаемые из jakarta.jms.Message. | Строка | |||
| Message Created Strategy | messageCreatedStrategy | Стратегия которая вызывается при создании новых экземпляров объектов jakarta.jms.Message во время отправки сообщения JMS. | Строка | |||
| Message Id Enabled | messageIdEnabled | При отправке указывает, следует ли добавлять идентификаторы сообщений. Это всего лишь подсказка для JMS-брокера. Если отправитель JMS принимает эту подсказку, идентификатору сообщения для этих сообщений должно быть присвоено значение null; если отправитель игнорирует подсказку, идентификатору сообщения должно быть присвоено его обычное уникальное значение. | True | Логическое значение | ||
| Message Listener Container Factory | messageListenerContainerFactory | Регистрационный идентификатор MessageListenerContainerFactory, используемый для определения того, какой org.springframework.jms.listener.AbstractMessageListenerContainer использовать для обработки сообщений. При установке этого параметра, параметру Consumer Type автоматически будет присвоено значение Custom. | Строка | |||
| Message Timestamp Enabled | messageTimestampEnabled | Указывает, должны ли временные метки Timestamp быть включены по умолчанию при отправке сообщений. Это всего лишь подсказка для JMS-брокера. Если отправитель JMS принимает эту подсказку, временная метка этих сообщений должна быть равна нулю; если отправитель игнорирует подсказку, временная метка должна быть установлена на свое обычное значение. | True | Логическое значение | ||
| Pub Sub No Local | pubSubNoLocal | Включение этой опции предотвратит получение сообщений, которые были опубликованы этим же соединением. | Логическое значение | |||
| Receive Timeout | receiveTimeout | Время ожидания для получения сообщений в миллисекундах. | 1000 | Длинное целое число | ||
| Recovery Interval | recoveryInterval | Указывает интервал между попытками восстановления, т.е. при обновлении соединения, в миллисекундах. | 5000 | Длинное целое число | ||
| Request Timeout Checker Interval | requestTimeoutCheckerInterval | Задает в миллисекундах, как часто следует проверять время ожидания запросов /ответов через JMS. Время ожидания определяется параметром Request Timeout. | 1000 | Длинное целое число | ||
| Synchronous | synchronous | Определяет, следует ли строго использовать синхронную обработку. | False | Логическое значение | ||
| Temporary Queue Resolver | temporaryQueueResolver | Позволяет вам задавать свой собственный распределитель для создания временных очередей (некоторые системы обмена сообщениями предъявляют особые требования к созданию временных очередей). | Строка | |||
| Transfer Exception | transferException | Если этот параметр включен, и вы используете обмен сообщениями с запросом-ответом (InOut), а на стороне потребителя произошел сбой обмена, то вызванное исключение будет отправлено обратно в ответ в виде jakarta.jms.ObjectMessage. Если клиентом является Camel, возвращенное исключение повторно генерируется. Это позволяет использовать блок JMS в качестве связующего звена при маршрутизации - например, использовать постоянные очереди для обеспечения надежной маршрутизации. Примечание: Если у вас также включен Transfer Exchange, этот параметр имеет приоритет. Перехваченное исключение должно быть сериализуемым. Исходное исключение на стороне потребителя может быть преобразовано во внешнее исключение. | False | Логическое значение | ||
| Transfer Exchange | transferExchange | Вы можете передавать не только тело сообщения и его заголовки но и все данные (объект Exchange), которые проходят через блок JMS. Передаются следующие поля: In body, Out body, Fault body, In headers, Out headers, Fault headers, свойства exchange, exchange exception. Для этого требуется, чтобы объекты были сериализуемыми. Все несериализуемые объекты будут исключены и зарегистрированы на уровне WARN. Вы должны включить эту опцию как на стороне отправителя, так и на стороне потребителя. | False | Логическое значение | ||
| Use Message IDAs Correlation ID | useMessageIDAsCorrelationID | Указывает, следует ли всегда использовать JMSMessageID в качестве JMSCorrelationID для входящих сообщений. | False | Логическое значение | ||
| Wait For Provision Correlation To Be Updated Counter | waitForProvisionCorrelationToBeUpdatedCounter | Количество раз, необходимое для обновления временного идентификатора корреляции до фактического идентификатора корреляции при выполнении запроса/ответа через JMS и при включенной опции Use Message IDAs Correlation ID. | 50 | Целое число | ||
| Wait For Provision Correlation To Be Updated Thread Sleeping Time | waitForProvisionCorrelationToBeUpdatedThreadSleepingTime | Интервал в миллисекундах для перехода в спящий режим каждый раз в ожидании обновления предварительного идентификатора корреляции. | 100 | Длинное целое число | ||
| Wait For Temporary Reply To To Be Updated Counter | waitForTemporaryReplyToToBeUpdatedCounter | Количество раз, необходимое для ожидания создания и готовности временной очереди replyTo при выполнении запроса/ответа через JMS. | 200 | Целое число | ||
| Wait For Temporary Reply To To Be Updated Thread Sleeping Time | waitForTemporaryReplyToToBeUpdatedThreadSleepingTime | Интервал в миллисекундах для перехода в спящий режим каждый раз при ожидании готовности временной очереди ответов. | 100 | Длинное целое число | ||
| Lazy Create Transaction Manager | lazyCreateTransactionManager | Если опция включена, то будет создан JmsTransactionManager, если значение Transacted = True и не задан Transaction Manager | True | Логическое значение | ||
| Transaction Manager | transactionManager | Используемый диспетчер транзакций. | Строка | |||
| Transaction Name | transactionName | Название используемой транзакции. | Строка | |||
| Transaction Timeout | transactionTimeout | Значение тайм-аута транзакции (в секундах), если используется режим транзакции. | -1 | Целое число | ||
Параметры безопасности блока JMS
| Название в UI | Название атрибута | Обязательный | Описание | Тип данных | Значение по умолчанию |
|---|---|---|---|---|---|
| Password | password | Пароль для использования в ConnectionFactory. Вы также можете настроить имя пользователя/пароль непосредственно в ConnectionFactory. | Строка | ||
| Username | username | Имя пользователя для использования в ConnectionFactory. Вы также можете настроить имя пользователя/пароль непосредственно в ConnectionFactory. | Строка |