I have a problem with use my ActiveMQ broker in Quarkus app. To first usage I wanna try example from the official website, and I have everything exactly like in examples (PriceConsumer
, PriceProducer
, Resource
, quarkus-qpid-jms
dependency, and quarkus.qpid-jms
- username/password), except quarkus.qpid-jms.url
, because there are endpoints with amqp, but I can't use that, I have endpoints with amqp ssl protocols.
When I've tried run application with this endpoints, it return errors:
"loggerName":"org.apache.qpid.jms.provider.ProviderFactory",
"level":"ERROR",
"message":"Failed to create Provider instance for amqp ssl, due to: {}",
"threadName":"FailoverProvider: async work thread",
(...)
"exception":{"refId":1,"exceptionType":"java.io.IOException","message":"Provider scheme NOT recognized: [amqp ssl]"
How could I configure that example for amqp ssl in Quarkus? It sounds easy, but I couldn't find anything about that (and I'm a really beginner in brokers topic). All protocols which I have to my activeMQ: amqp ssl / ssl / wss / mqtt ssl / stomp ssl
CodePudding user response:
The Qpid JMS client you're using doesn't support the scheme amqp ssl
(as noted in the exception's message). You need to use amqps
instead as noted in the documentation.
Keep in mind that the connector configuration in your activemq.xml
(e.g. amqp ssl
, ssl
, wss
, mqtt ssl
, stomp ssl
) is for the broker only. Each client implementation has its own unique connection support whether than be via a URL or something else. You can't use the broker's configuration on a client and expect it to work.