URL传输验证程序ActiveMQ



我的Uri有个小问题。我不知道如何验证包含以下内容的Uri:failover、static、vm、broker、fanout,当然我可以使用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();

我想在设置BrokerURL之前检查Url。Uri没有问题:
tcp://localhost:61616?transport.trace=false&transport.soTimeout=60000
,但urlValidator过于严格,不接受如下所示的Uri:
故障切换:(tcp://localhost:61616,tcp://remotehost:61616)?initialReconnectDelay=100
扇出:(静态:(tcp://localhost:61616,tcp://remotehost:61616))?initialReconnectDelay=100
也许你知道答案?;)

没有这样的工具来验证各种代理URI选项和传输选择。你必须自己写一些东西。也许您可以通过消化activemq.xsd并查看允许的选项及其关联类型来创建一些东西。

最新更新