Сопоставление записей JMS JNDI с помощью Thorntail

Мне нужно сопоставить следующую конфигурацию JMS, которую я сейчас использую в WildFly с Thorntail:

 <jms-queue name="ExampleQueue" entries="queue/exampleQueue java:/jboss/exported/jms/queue/exampleQueue"/>

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

thorntail:
  management:
    security-realms:
      ApplicationRealm:
        in-memory-authentication:
          users:
            bob:
              password: Password1!
        in-memory-authorization:
          users:
            jmsuser:
              roles:
              - guest  
  messaging-activemq:
    servers:
      default:
        jms-queues:
          exampleQueue: {}
            entries: queue/exampleQueue java:/jboss/exported/jms/queue/exampleQueue

Что приводит к:

Caused by: java.lang.RuntimeException: while parsing a block mapping
 in 'reader', line 18, column 11:
              exampleQueue: {}
              ^
expected <block end>, but found BlockMappingStart
 in 'reader', line 19, column 13:
                entries: queue/exampleQueue java ... 

Я немного заблудился. Вы можете помочь мне это исправить? Спасибо!


person Carla    schedule 04.04.2019    source источник


Ответы (1)


Вы получили это почти правильно. Что вам нужно (показывает только часть обмена сообщениями):

messaging-activemq:
  servers:
    default:
      jms-queues:
        exampleQueue:
          entries:
          - queue/exampleQueue
          - java:/jboss/exported/jms/queue/exampleQueue

(Я думаю, что queue/exampleQueue, возможно, должно быть jms/queue/exampleQueue, но не совсем уверен.)

Для полного рабочего примера вы можете увидеть, например, https://github.com/rhoar-qe/thorntail-test-suite/tree/master/javaee/messaging-remote

person Ladicek    schedule 04.04.2019
comment
Спасибо за ваше предложение. Я пробовал, и он компилируется. Затем я попытался запустить JMSClient (тот же, что и в Quickstarts WildFly), но я получаю эту странную ошибку: 2019-04-04 14: 42: 15,763 WARN [org.apache.activemq.artemis.core.server] ( ввод-вывод по умолчанию-9) AMQ222216: Проблема безопасности при создании сеанса: AMQ119031: Невозможно проверить пользователя из / 0: 0: 0: 0: 0: 0: 0: 1: 57248. Имя пользователя: jmsuser; DN субъекта сертификата SSL: недоступен. Запуск того же клиента с дистрибутивом WildFly работает нормально. Есть ли какие-нибудь настройки SSL в Thorntail, которые могут помочь? - person Carla; 04.04.2019
comment
Полагаю, у вас уже есть зависимость от дроби management? - person Ladicek; 04.04.2019
comment
Эм-м-м! Простите, я не знал, что это нужно. Спасибо большое, это работает! - person Carla; 04.04.2019
comment
Да, SSL не работает без management. Он все еще время от времени кусает меня. - person Ladicek; 04.04.2019