Activemq 使用带有BlobMessage的活动MQ发送文件
我的应用程序要求通过HTTP/FTP协议将文件从一个应用程序发送到另一个应用程序。我发现了以下链接,该链接告诉我们,使用活动MQ和对Blob消息的支持也可以做到这一点: activemq.apache.org/blob-messages.html 我在windows计算机上配置了ActiveMq 5.8,在Activemq 使用带有BlobMessage的活动MQ发送文件,activemq,spring-jms,jmstemplate,Activemq,Spring Jms,Jmstemplate,我的应用程序要求通过HTTP/FTP协议将文件从一个应用程序发送到另一个应用程序。我发现了以下链接,该链接告诉我们,使用活动MQ和对Blob消息的支持也可以做到这一点: activemq.apache.org/blob-messages.html 我在windows计算机上配置了ActiveMq 5.8,在pom.xml中包含了ActiveMq库所需的依赖项,并且我能够使用org.springframework.jms.core.JmsTemplate发送简单的javax.jms.TextMes
pom.xml
中包含了ActiveMq库所需的依赖项,并且我能够使用org.springframework.jms.core.JmsTemplate
发送简单的javax.jms.TextMessage
和javax.jms.MapMessage
但是,当我使用下面的方法发送BlobMessage时,从javax.jms.Session
对象创建BlobMessage
对象时,出现了一个编译时错误,其中
类型会话的方法createBlobMessage(文件)未定义
以下是我正在使用的方法:
public void sendFile(){
jmsTemplate.send(
new MessageCreator() {
public Message createMessage(Session session) throws JMSException {
BlobMessage message = session.createBlobMessage(new File("/foo/bar"));
return jmsTemplate.send(message);
}
}
);
}
请帮助解决此编译时错误
问候,
ArunBlobMessage方法不是JMS规范方法,因此它们不会出现在javax.JMS.Session接口中,您需要强制转换到org.apache.activemq.ActiveMQSession才能使用BlobMessage特定的功能 你说得对。通过类型转换,我能够从会话实例创建
BlobMessage
。您能告诉我如何使用一些生产者
实例发送此blob消息,因为我无法使用JMSTemplate发送新创建的blog消息。如果您提供一些示例代码来使用Spring本身发送blob消息,那就太好了。