ActiveMQ参数异常 “Invalid broker URI”

某次启动项目报错,提示ActiveMQ参数异常

该参数的值配置如下

跟踪读取配置的代码如下,可以看到读取我配置的key为xmq.actmq.connection.url.forSend的对应值,赋值到brokerURL属性,创建连接对象时产生错误

深入跟踪源代码到ActiveMQConnectionFactory 类,发现异常在该处抛出

 

该类中在创建URI时没有采用防御编码的方式,导致传进参数中包含空格的话会抛出非法参数异常,实际上 ActiveMQConnectionFactory.createURI 方法如果改造一下,将参数中的空格去除掉,就可以避免我的这种参数中含空格的情况。

这里改不了源代码,只能将参数规范一下,去掉空格;或者在我这传参数的时候代码处理一下了。

原文地址:https://www.cnblogs.com/zjfjava/p/11117793.html