ActiveMQ 5.11.1
Spring 4.1.1

I'd like to configure redelivery policy per destination in spring xml. (Two
queue with defferent policy.) The RedeliveryPolicyMap setEntries method 
seems to right for this. The javadoc says: "A helper method to allow the
destination map to be populated from a dependency injection framework such
as Spring"
http://activemq.apache.org/maven/5.11.0/apidocs/org/apache/activemq/filter/DestinationMap.html#setEntries(java.util.List)

But there is no getter metthod, so the spring framwork throw the following
error message:
"Caused by: org.springframework.beans.NotWritablePropertyException: Invalid
property 'entries' of bean class
[org.apache.activemq.broker.region.policy.RedeliveryPolicyMap]: Bean
property 'entries' is not writable or has an invalid setter method. Does the
parameter type of the setter match the return type of the getter?"

The missing of RedeliveryPolicyMap.getEntries method is intentional or is a
bug? Can I configure this some other way?

spring configuration:
<bean id="smsOut" class="org.apache.activemq.command.ActiveMQQueue">
        <constructor-arg index="0" value="sms_out" />
</bean>
<bean id="smsIn" class="org.apache.activemq.command.ActiveMQQueue">
        <constructor-arg index="0" value="sms_in" />
</bean>
<bean id="smsOutRedeliveryPolicy"
class="org.apache.activemq.RedeliveryPolicy">
    <property name="destination" ref="smsOut" />
    <property name="maximumRedeliveries" value="10" />
</bean>
<bean id="smsInRedeliveryPolicy"
class="org.apache.activemq.RedeliveryPolicy">
    <property name="destination" ref="smsIn" />
    <property name="maximumRedeliveries" value="1" />
</bean>
<bean id="redeliveryPolicyMap"
class="org.apache.activemq.broker.region.policy.RedeliveryPolicyMap">
        <property name="entries">
                <list>
                        <ref bean="smsOutRedeliveryPolicy" />
                        <ref bean="smsInRedeliveryPolicy" />
                </list>
        </property>
</bean>
<bean id="amqConnectionFactory"
class="org.apache.activemq.ActiveMQConnectionFactory">
    <constructor-arg index="0" value="tcp://localhost:61616" />
    <property name="redeliveryPolicyMap" ref="redeliveryPolicyMap"/>
</bean>
<bean id="connectionFactory"
class="org.springframework.jms.connection.CachingConnectionFactory">
    <constructor-arg ref="amqConnectionFactory" />
</bean>



--
View this message in context: 
http://activemq.2283324.n4.nabble.com/Redeliverypolicy-per-detination-in-Spring-tp4700640.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to