具有开放自由度的反应式消息传递AMQP和服务总线

时间:2019-11-09 09:29:02

标签: azureservicebus open-liberty smallrye-reactive-messaging

Open Liberty带有mpReactiveMessaging-1.0功能,其中包括一个Kafka连接器。

我想与Azure Service Bus集成,并且使用Smallrye AMQP连接器(版本1.0.8)。

当尝试使用@Outgoing-注释发送到服务总线队列时,我得到

javax.net.ssl.SSLHandshakeException: Failed to create SSL connection

我在调试Smallrye实现时发现。

我已经浏览了Proton,vert.x和Azure Service Bus AMQP文档,但是找不到用于AMQP Service Bus连接正常的MP配置属性集出问题的示例或指示。

mp.messaging.outgoing.servicebus.address=xxxxxxx 
mp.messaging.outgoing.servicebus.connector=smallrye-amqp
mp.messaging.outgoing.servicebus.host=xxxxx.servicebus.windows.net
mp.messaging.outgoing.servicebus.port=5672
mp.messaging.outgoing.servicebus.username=my_saspolicyname
mp.messaging.outgoing.servicebus.password=the_saskey
mp.messaging.outgoing.servicebus.use-ssl=true
mp.messaging.outgoing.servicebus.hostname-verification-algorithm=''
mp.messaging.outgoing.servicebus.containerId=mycontainer
mp.messaging.outgoing.servicebus.amqp-use-ssl=true

1 个答案:

答案 0 :(得分:0)

默认情况下,Open Liberty不信任Java提供的CA证书的标准列表。我不熟悉Azure Service Bus,但是由于我在文档中找不到有关配置证书的任何内容,因此我假设它使用由受信任的机构签名的证书。

在这种情况下,您可能需要将其添加到server.xml中,以告诉OpenLiberty信任Java随附的CA证书。

<ssl id="defaultSSLConfig" trustDefaultCerts="true"/>

此选项是在Open Liberty版本19.0.0.12中添加的