Example usage for org.springframework.integration.jms ChannelPublishingJmsMessageListener onMessage

List of usage examples for org.springframework.integration.jms ChannelPublishingJmsMessageListener onMessage

Introduction

In this page you can find the example usage for org.springframework.integration.jms ChannelPublishingJmsMessageListener onMessage.

Prototype

@Override
    public void onMessage(javax.jms.Message jmsMessage, Session session) throws JMSException 

Source Link

Usage

From source file:org.springframework.integration.jms.ChannelPublishingJmsMessageListenerTests.java

@Test(expected = InvalidDestinationException.class)
public void noReplyToAndNoDefault() throws JMSException {
    final QueueChannel requestChannel = new QueueChannel();
    startBackgroundReplier(requestChannel);
    ChannelPublishingJmsMessageListener listener = new ChannelPublishingJmsMessageListener();
    listener.setExpectReply(true);//w ww  .  j a v a  2 s  . c  o m
    listener.setRequestChannel(requestChannel);
    listener.setMessageConverter(new TestMessageConverter());
    javax.jms.Message jmsMessage = session.createTextMessage("test");
    listener.setBeanFactory(mock(BeanFactory.class));
    listener.afterPropertiesSet();
    listener.onMessage(jmsMessage, session);
}

From source file:org.springframework.integration.jms.ChannelPublishingJmsMessageListenerTests.java

@Test
public void testBadConversion() throws Exception {
    final QueueChannel requestChannel = new QueueChannel();
    ChannelPublishingJmsMessageListener listener = new ChannelPublishingJmsMessageListener();
    Log logger = spy(TestUtils.getPropertyValue(listener, "logger", Log.class));
    doAnswer(new DoesNothing()).when(logger).error(anyString(), any(Throwable.class));
    new DirectFieldAccessor(listener).setPropertyValue("logger", logger);
    listener.setRequestChannel(requestChannel);
    QueueChannel errorChannel = new QueueChannel();
    listener.setErrorChannel(errorChannel);
    listener.setBeanFactory(mock(BeanFactory.class));
    listener.setMessageConverter(new TestMessageConverter() {

        @Override//from   www .j  av  a  2  s . com
        public Object fromMessage(javax.jms.Message message) throws JMSException, MessageConversionException {
            return null;
        }

    });
    listener.afterPropertiesSet();
    javax.jms.Message jmsMessage = session.createTextMessage("test");
    listener.onMessage(jmsMessage, mock(Session.class));
    ErrorMessage received = (ErrorMessage) errorChannel.receive(0);
    assertNotNull(received);
    assertThat(received.getPayload().getMessage(), startsWith("Inbound conversion failed"));
    listener.stop();
}