Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Not A Bug
-
1.6.0
-
None
-
None
-
OpenJDK 11
Description
I am trying to migrate from qpid-jms-client from 0.6.1 to 1.6.0 but with the new release I get the following error:
Exception in thread "main" java.lang.IllegalArgumentException: Not all jms options could be set on the ConnectionFactory. Check the options are spelled correctly. Unused parameters=[ {redeliveryPolicy.maxRedeliveries=0, redeliveryPolicy.outcome=REJECTED, presettlePolicy.presettleAll=false} ]. This connection factory cannot be started. at org.apache.qpid.jms.JmsConnectionFactory.setRemoteURI(JmsConnectionFactory.java:420) at org.apache.qpid.jms.JmsConnectionFactory.<init>(JmsConnectionFactory.java:128)
The connection string looks something like this:
failover:(amqps://localhost:5671?transport.useOpenSSL=true&amqp.vhost=localhostamqp.saslLayer=true&amqp.saslMechanisms=EXTERNAL)?failover.maxReconnectAttempts=-1&failover.startupMaxReconnectAttempts=3&failover.warnAfterReconnectAttempts=1&failover.nested.transport.contextProtocol=TLSv1.2&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
Looking at the documentation at https://qpid.apache.org/releases/qpid-jms-1.6.0/docs/index.html the parameters jms.redeliveryPolicy.maxRedeliveries, jms.redeliveryPolicy.outcome and jms.presettlePolicy.presettleAll still exist, so I don't really understand why this fails now.