INT-1440 the QoS properties are now only applied to JmsTemplate if it is not a referenced bean

This commit is contained in:
Mark Fisher
2010-09-13 15:05:10 -04:00
parent f454378013
commit f7bca5e9ba
2 changed files with 24 additions and 16 deletions

View File

@@ -101,6 +101,20 @@ public class JmsOutboundChannelAdapterParserTests {
assertEquals(context.getBean("template"), jmsTemplate);
}
@Test
public void adapterWithJmsTemplateQos() {
ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(
"jmsOutboundWithJmsTemplateQos.xml", this.getClass());
EventDrivenConsumer endpoint = (EventDrivenConsumer) context.getBean("adapter");
DirectFieldAccessor handlerAccessor = new DirectFieldAccessor(new DirectFieldAccessor(endpoint).getPropertyValue("handler"));
JmsTemplate jmsTemplate = (JmsTemplate) handlerAccessor.getPropertyValue("jmsTemplate");
assertNotNull(jmsTemplate);
assertEquals(context.getBean("template"), jmsTemplate);
assertTrue(jmsTemplate.isExplicitQosEnabled());
assertEquals(7, jmsTemplate.getPriority());
assertEquals(12345, jmsTemplate.getTimeToLive());
}
@Test
public void adapterWithMessageConverter() {
ClassPathXmlApplicationContext context = new ClassPathXmlApplicationContext(