Пружинная загрузка + JMS + IBM MQ - PullRequest
0 голосов
/ 05 декабря 2018

Я пытаюсь отправить сообщение в очередь IBM MQ из службы весенней загрузки.Конфигурация выглядит следующим образом:

Application.properties

ibm.mq.queueManager=QM1
ibm.mq.queue=DEV.QUEUE.1
ibm.mq.channel=DEV.APP.RECEIVER
ibm.mq.host=localhost
ibm.mq.port=1414

ConectionFactory Bean

@Bean
        public MQQueueConnectionFactory mqQueueConnectionFactory() {
            MQQueueConnectionFactory mqQueueConnectionFactory = new MQQueueConnectionFactory();
            mqQueueConnectionFactory.setHostName(host);
            try {
                mqQueueConnectionFactory.setTransportType(WMQConstants.ADMIN_QUEUE_DOMAIN);
                mqQueueConnectionFactory.setCCSID(1208);
                mqQueueConnectionFactory.setChannel(channel);
                mqQueueConnectionFactory.setPort(port);
                mqQueueConnectionFactory.setQueueManager(queueManager);
            } catch (Exception e) {
                e.printStackTrace();
            }
            return mqQueueConnectionFactory;
        }

IBMФотографии MQ Explorer

очередь queue

канал channel

слушатель listener

Когда я пытаюсь отправить сообщение, я получаю сообщение об ошибке:

'2' ('MQCC_FAILED') razón '2539' ('MQRC_CHANNEL_CONFIG_ERROR').

Чтоя скучаю?Ошибка, большая, чем у моего типа chammel, не соответствует моей просьбе, но я не знаю, что это значит.

Заранее спасибо.

Ответы [ 2 ]

0 голосов
/ 05 декабря 2018

Похоже (как отметил Марк) вы используете неверный тип канала.Я быстро Google говорит мне, что испанский Receptor переводится с английского на Receiver.Канал типа Receiver - это Канал сообщений, используемый администратором очередей для связи с администратором очередей.

Для MQ Client (например: весенняя загрузка) с администратором очередей необходимо подключиться к каналу MQI в очереди.Диспетчер этого будет иметь тип подключения к серверу.


Страница центра знаний IBM MQ v8 " IBM MQ Explorer> Настройка IBM MQ с помощью MQ Explorer> Создание и настройка администраторов очередей и объектов> Объекты вMQ Explorer> Каналы"документирует это:

Канал сообщений
Канал сообщений является однонаправленным каналом связи между двумя администраторами очередей.IBM MQ использует каналы сообщений для передачи сообщений между администраторами очередей .Чтобы отправлять сообщения в обоих направлениях, необходимо определить канал для каждого направления.

Канал MQI
Канал MQI является двунаправленным, а соединяет приложение (клиент MQI) садминистратор очередей на сервере.IBM MQ использует каналы MQI для передачи вызовов и ответов MQI между клиентами MQI и администраторами очередей.

IBM документирует каждый тип ниже на странице:

Каналы сообщений

Определения каналов сообщений могут быть одного из следующих типов:

Приемник
Канал приемника - это канал сообщений, которыйадминистратор очередей использует для получения сообщений от других администраторов очередей .Чтобы получать сообщения, используя канал получателя, вы также должны создать в другом администраторе очередей канал отправителя или сервера с тем же именем, что и у этого канала получателя.

Каналы MQI

Каналы MQI могут быть одного из следующих типов:

Подключение к серверу
Канал подключения к серверу является двунаправленнымКанал MQI, который используется для подключения клиента IBM MQ к серверу IBM MQ .Канал подключения к серверу является серверной частью канала.

0 голосов
/ 05 декабря 2018

Клиентские программы подключаются к каналам SVRCONN, а не к ПРИЕМНИКАМ.

...