0

Iam trying to publish messages to AMQ using jmsTemlate in Spring Boot project Asyncronously using below code.

@Async public void sendMessage(String text, String eventName, long entityPk, String messageId, String messageType, long messageVersion, String destinationQueue) { if (null != text) { String pubDate = DeUtils.getCurrentDateInString(); try {

            Map messageHeaders = getMessageHeader(messageId, messageType, messageVersion, entityPk, pubDate);
            jmsTemplate.send(destinationQueue, session -> {
                TextMessage textMessage = session.createTextMessage();
                setMessageProperties(messageHeaders, textMessage);
                textMessage.setText(text);
                return textMessage;
            });
            
            saveToPubTable(messageId, messageType, messageVersion, pubDate, CodeTypeConstants.SUCCESS, text);
            

        } catch (Exception e) {
            
            saveToPubTable(messageId, messageType, messageVersion, pubDate, CodeTypeConstants.FAILURE, text);
        }
        finally{
            log.info("PublishAsyncServiceImpl : finally ");
        }

    }
}

When i started my spring boot app ,AMQ broker is up and running.After some time i made AMQ down and trying to publish messages.But control is not coming back from jmsTemplate.send method in above code.its not throwing any exception also.Control is not coming to catch or finally blocks also.Not sure what exactly causing the issue.

Lakshmi
  • 31
  • 5

0 Answers0