我想用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