我想用jmstemplate(帶有activemq jms代理)發送大型字符串消息(3-5 MB)。在發送消息的過程中,我關閉了我的經紀人;爲什麼我不能捕獲拋出異常(例外e)?我應該怎樣處理這個異常?JmsTemplate中的異常處理髮送
public class MessageSenderServiceImpl implements MessageSenderService
{
private JmsTemplate jmsTemplate;
@Override
@Transactional
public void sendMessage(final String messageContent, final String destination) throws SendingMessageException
{
try
{
jmsTemplate.send(destination, new MessageCreator()
{
@Override
public Message createMessage(Session session) throws JMSException
{
BytesMessage byteMessage = session.createBytesMessage();
try
{
byteMessage.writeBytes(messageContent.getBytes("UTF-8"));
return byteMessage;
}
catch (UnsupportedEncodingException e)
{
e.printStackTrace();
throw new JMSException(e.getMessage());
}
}
});
}
catch(Exception e)
{
throw new SendingMessageException(e.getMessage(),e);
}
}
public void setJmsTemplate(JmsTemplate jmsTemplate)
{
this.jmsTemplate = jmsTemplate;
}
}
在此先感謝。
你會得到哪些例外?日誌文件中包含什麼內容? – Beryllium
你解決了這個問題嗎?我看到類似的東西。有沒有可能JmsTemplate沒有拋出異常? – rghome