我对Uri有小问题。我不知道如何验证包含以下内容的Uri:故障转移,静态,虚拟机,代理,扇出,当然我可以使用org.apache.commons.validator包中的URLValidator验证包含tcp,udp,ssl的Uri。我正在查看ActiveMQ文档,但我找不到解决此问题的方法。 在我连接到ActiveMQ之前,我必须检查Uri。 这是一个例子:
String url = "failover:(tcp://localhost:61616,tcp://remotehost:61616)?initialReconnectDelay=100";
UrlValidator urlValidator = new UrlValidator(UrlValidator.ALLOW_ALL_SCHEMES);
urlValidator.isValid(url);
ActiveMQConnectionFactory activemg = new ActiveMQConnectionFactory();
activemg.setBrokerURL(url);
activemg.createConnection();
我想在setBrokerURL之前检查Url。这不是Uri的问题:
tcp:// localhost:61616?transport.trace = false& transport.soTimeout = 60000
,但是urlValidator太严格了,不接受看起来像这样的Uri:
故障切换:(TCP://本地主机:61616,TCP://远程主机:61616)?initialReconnectDelay = 100
扇出:(静态:(TCP://本地主机:61616,TCP://远程主机:61616))?initialReconnectDelay = 100
也许你知道答案吗?;)
答案 0 :(得分:0)
没有用于验证各种代理URI选项和传输选择的工具。你必须自己写点东西。也许您可以通过消化activemq.xsd并查看允许的选项及其相关类型来创建内容。