[
https://issues.apache.org/jira/browse/QPIDJMS-486?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17019681#comment-17019681
]
Robbie Gemmell commented on QPIDJMS-486:
----------------------------------------
Perhaps also try using the alternative "failover.nested.<foo>" option format to
set it on the outer section instead, see bottom of the section:
http://qpid.apache.org/releases/qpid-jms-0.48.0/docs/index.html#failover-configuration-options
> Cannot use connection URL with failover provider and custom cipher suites
> -------------------------------------------------------------------------
>
> Key: QPIDJMS-486
> URL: https://issues.apache.org/jira/browse/QPIDJMS-486
> Project: Qpid JMS
> Issue Type: Bug
> Components: qpid-jms-client
> Affects Versions: 0.48.0
> Reporter: Sebastian T
> Priority: Major
>
> Example URL:
> {code:java}
> failover:(amqps://mybroker.local:5671?transport.connectTimeout=15000&transport.soLinger=10000&transport.tcpNoDelay=true&transport.sendBufferSize=65536&transport.receiveBufferSize=65536&transport.useOpenSSL=true&transport.contextProtocol=TLSv1.2&transport.enabledCipherSuites=TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_DHE_RSA_WITH_AES_256_GCM_SHA384&transport.keyStoreType=JKS&transport.keyStoreLocation=/C:/Temp/keystore-store.jks&transport.keyStorePassword=REPLACE_ME&transport.trustStoreType=jks&transport.trustStoreLocation=/C:/Temp/trust-store.jks&transport.trustStorePassword=REPLACE_ME&amqp.maxFrameSize=102400&amqp.vhost=mybroker.local&amqp.drainTimeout=60000&amqp.idleTimeout=60000&amqp.saslLayer=true&amqp.saslMechanisms=EXTERNAL)?failover.maxReconnectAttempts=-1&failover.startupMaxReconnectAttempts=3&failover.warnAfterReconnectAttempts=1&jms.populateJMSXUserID=true&jms.localMessageExpiry=true&jms.requestTimeout=60000&jms.sendTimeout=60000&jms.receiveNoWaitLocalOnly=true&jms.validatePropertyNames=false&jms.redeliveryPolicy.maxRedeliveries=0&jms.redeliveryPolicy.outcome=REJECTED&jms.presettlePolicy.presettleAll=false
> {code}
> Error Message:
> {code:java}
> [FailoverProvider: async work thread] INFO FailoverProvider - Connection
> attempt:[1] to: amqps://mybroker.local:5671 failed
> [FailoverProvider: async work thread] ERROR ProviderFactory - Failed to
> create Provider instance for null, due to: {}
> java.io.IOException: No Provider scheme specified.
> at
> org.apache.qpid.jms.provider.ProviderFactory.findProviderFactory(ProviderFactory.java:149)
> at
> org.apache.qpid.jms.provider.ProviderFactory.findProviderFactory(ProviderFactory.java:131)
> at
> org.apache.qpid.jms.provider.ProviderFactory.create(ProviderFactory.java:102)
> at
> org.apache.qpid.jms.provider.failover.FailoverProvider$14.run(FailoverProvider.java:746)
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
> at java.util.concurrent.FutureTask.run(FutureTask.java:266)
> at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
> at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
> at java.lang.Thread.run(Thread.java:748)
> [FailoverProvider: async work thread] INFO FailoverProvider - Connection
> attempt:[1] to: null://null:-1 failed
> [FailoverProvider: async work thread] WARN FailoverProvider - Failed to
> connect after: 1 attempt(s) continuing to retry.
> [FailoverProvider: async work thread] INFO FailoverProvider - Connection
> attempt:[2] to: amqps://mybroker.local:5671 failed
> [FailoverProvider: async work thread] ERROR ProviderFactory - Failed to
> create Provider instance for null, due to: {}
> java.io.IOException: No Provider scheme specified.
> at
> org.apache.qpid.jms.provider.ProviderFactory.findProviderFactory(ProviderFactory.java:149)
> at
> org.apache.qpid.jms.provider.ProviderFactory.findProviderFactory(ProviderFactory.java:131)
> at
> org.apache.qpid.jms.provider.ProviderFactory.create(ProviderFactory.java:102)
> at
> org.apache.qpid.jms.provider.failover.FailoverProvider$14.run(FailoverProvider.java:746)
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
> at java.util.concurrent.FutureTask.run(FutureTask.java:266)
> at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
> at
> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
> at java.lang.Thread.run(Thread.java:748)
> {code}
>
> I guess the problem is that the transport.enabledCipherSuites option contains
> a comma which is interpreted by the failover provider as the start of the URL
> of a secondary broker address.
>
> I tried to escape the comma as %26 but that didn't make a difference.
>
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]