Spring boot Spring引导客户端连接到现有JBoss EAP7 ActiveMQ
我一直在网上搜索,但是我找不到一个关于如何使用Spring引导客户机连接到JBoss上的ActiveMQ(启动并运行)的示例 Spring提供了很多教程,但是使用了嵌入式代理 任何指针都会很棒 提前感谢,, 毫升 根据提供的信息,我得到了以下信息:Spring boot Spring引导客户端连接到现有JBoss EAP7 ActiveMQ,spring-boot,jboss,activemq,Spring Boot,Jboss,Activemq,我一直在网上搜索,但是我找不到一个关于如何使用Spring引导客户机连接到JBoss上的ActiveMQ(启动并运行)的示例 Spring提供了很多教程,但是使用了嵌入式代理 任何指针都会很棒 提前感谢,, 毫升 根据提供的信息,我得到了以下信息: @Configuration @SpringBootApplication @EnableJms public class Application { @Bean ActiveMQConnectionFactory activeMQConnecti
@Configuration
@SpringBootApplication
@EnableJms
public class Application {
@Bean
ActiveMQConnectionFactory activeMQConnectionFactory() {
final String host = "http://127.0.0.1:8080";
ActiveMQConnectionFactory factory = new ActiveMQConnectionFactory(host);
factory.setUserName("user");
factory.setPassword("pwd");
factory.setTrustAllPackages(true);
return factory;
}
@Bean
public JmsListenerContainerFactory<?> myFactory(ConnectionFactory connectionFactory,
DefaultJmsListenerContainerFactoryConfigurer configurer) {
DefaultJmsListenerContainerFactory factory = new DefaultJmsListenerContainerFactory();
// This provides all boot's default to this factory, including the
// message converter
configurer.configure(factory, connectionFactory);
// You could still override some of Boot's default if necessary.
return factory;
}
@Bean // Serialize message content to json using TextMessage
public MessageConverter jacksonJmsMessageConverter() {
MappingJackson2MessageConverter converter = new MappingJackson2MessageConverter();
converter.setTargetType(MessageType.TEXT);
converter.setTypeIdPropertyName("_type");
return converter;
}
public static void main(String[] args) {
// Launch the application
ConfigurableApplicationContext context = SpringApplication.run(Application.class, args);
JmsTemplate jmsTemplate = context.getBean(JmsTemplate.class);
// Send a message with a POJO - the template reuse the message converter
System.out.println("Sending an email message.");
jmsTemplate.convertAndSend("TestQ", new Email("info@example.com", "Hello"));
}
我不知道这是什么:
Caused by: java.lang.IllegalArgumentException: Invalid connect
parameters: {wireFormat.host=127.0.0.1}
感谢提供配置,但将代理url更改为外部ActiveMQ服务器:请参阅以了解不同的协议(例如tcp)。您可能还需要包括用户和密码 我从本教程开始,并对其进行了自己的编辑,以使其按照我希望的方式使用ActiveMQ。您也可以在此处查找其他选项:。在春天有几种不同的方法可以做到这一点 也包括工厂豆。在这里,我使用@JmsListener注释来侦听消息,并使用jmstemplate发布消息
import javax.jms.ConnectionFactory;
import org.apache.activemq.ActiveMQConnectionFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.autoconfigure.jms.DefaultJmsListenerContainerFactoryConfigurer;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.jms.annotation.EnableJms;
import org.springframework.jms.config.DefaultJmsListenerContainerFactory;
import org.springframework.jms.config.JmsListenerContainerFactory;
@Configuration
@EnableJms
public class JMSConfiguration {
private static final Logger logger = LoggerFactory.getLogger(JMSConfiguration.class);
@Bean ActiveMQConnectionFactory activeMQConnectionFactory() {
ActiveMQConnectionFactory factory =
new ActiveMQConnectionFactory("tcp://somehost:61616");
factory.setTrustAllPackages(true);
return factory;
}
@Bean
public JmsListenerContainerFactory<?> myFactory(ConnectionFactory connectionFactory,
DefaultJmsListenerContainerFactoryConfigurer configurer) {
DefaultJmsListenerContainerFactory factory = new DefaultJmsListenerContainerFactory();
// This provides all boot's default to this factory, including the
// message converter
configurer.configure(factory, connectionFactory);
// You could still override some of Boot's default if necessary.
return factory;
}
}
导入javax.jms.ConnectionFactory;
导入org.apache.activemq.ActiveMQConnectionFactory;
导入org.slf4j.Logger;
导入org.slf4j.LoggerFactory;
导入org.springframework.boot.autoconfigure.jms.DefaultJmsListenerContainerFactoryConfigurer;
导入org.springframework.context.ApplicationContext;
导入org.springframework.context.annotation.Bean;
导入org.springframework.context.annotation.Configuration;
导入org.springframework.jms.annotation.EnableJms;
导入org.springframework.jms.config.DefaultJmsListenerContainerFactory;
导入org.springframework.jms.config.JmsListenerContainerFactory;
@配置
@使能JMS
公共类JMS配置{
私有静态最终记录器Logger=LoggerFactory.getLogger(JMSConfiguration.class);
@Bean ActiveMQConnectionFactory ActiveMQConnectionFactory(){
ActiveMQConnectionFactory工厂=
新建ActiveMQConnectionFactory(“tcp://somehost:61616");
factory.setTrustAllPackages(true);
返回工厂;
}
@豆子
公共JmsListenerContainerFactory myFactory(连接工厂连接工厂,
DefaultJmsListenerContainerFactoryConfigurer(配置器){
DefaultJmsListenerContainerFactory=新的DefaultJmsListenerContainerFactory();
//这将为此工厂提供所有引导的默认设置,包括
//消息转换器
configurer.configure(工厂、连接工厂);
//如有必要,您仍然可以覆盖Boot的一些默认设置。
返回工厂;
}
}
依赖项:spring启动程序activemq
Spring版本:1.4.3.发布进行配置,但将代理url更改为外部ActiveMQ服务器:请参阅以了解不同的协议(例如tcp)。您可能还需要包括用户和密码 我从本教程开始,并对其进行了自己的编辑,以使其按照我希望的方式使用ActiveMQ。您也可以在此处查找其他选项:。在春天有几种不同的方法可以做到这一点 也包括工厂豆。在这里,我使用@JmsListener注释来侦听消息,并使用jmstemplate发布消息
import javax.jms.ConnectionFactory;
import org.apache.activemq.ActiveMQConnectionFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.autoconfigure.jms.DefaultJmsListenerContainerFactoryConfigurer;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.jms.annotation.EnableJms;
import org.springframework.jms.config.DefaultJmsListenerContainerFactory;
import org.springframework.jms.config.JmsListenerContainerFactory;
@Configuration
@EnableJms
public class JMSConfiguration {
private static final Logger logger = LoggerFactory.getLogger(JMSConfiguration.class);
@Bean ActiveMQConnectionFactory activeMQConnectionFactory() {
ActiveMQConnectionFactory factory =
new ActiveMQConnectionFactory("tcp://somehost:61616");
factory.setTrustAllPackages(true);
return factory;
}
@Bean
public JmsListenerContainerFactory<?> myFactory(ConnectionFactory connectionFactory,
DefaultJmsListenerContainerFactoryConfigurer configurer) {
DefaultJmsListenerContainerFactory factory = new DefaultJmsListenerContainerFactory();
// This provides all boot's default to this factory, including the
// message converter
configurer.configure(factory, connectionFactory);
// You could still override some of Boot's default if necessary.
return factory;
}
}
导入javax.jms.ConnectionFactory;
导入org.apache.activemq.ActiveMQConnectionFactory;
导入org.slf4j.Logger;
导入org.slf4j.LoggerFactory;
导入org.springframework.boot.autoconfigure.jms.DefaultJmsListenerContainerFactoryConfigurer;
导入org.springframework.context.ApplicationContext;
导入org.springframework.context.annotation.Bean;
导入org.springframework.context.annotation.Configuration;
导入org.springframework.jms.annotation.EnableJms;
导入org.springframework.jms.config.DefaultJmsListenerContainerFactory;
导入org.springframework.jms.config.JmsListenerContainerFactory;
@配置
@使能JMS
公共类JMS配置{
私有静态最终记录器Logger=LoggerFactory.getLogger(JMSConfiguration.class);
@Bean ActiveMQConnectionFactory ActiveMQConnectionFactory(){
ActiveMQConnectionFactory工厂=
新建ActiveMQConnectionFactory(“tcp://somehost:61616");
factory.setTrustAllPackages(true);
返回工厂;
}
@豆子
公共JmsListenerContainerFactory myFactory(连接工厂连接工厂,
DefaultJmsListenerContainerFactoryConfigurer(配置器){
DefaultJmsListenerContainerFactory=新的DefaultJmsListenerContainerFactory();
//这将为此工厂提供所有引导的默认设置,包括
//消息转换器
configurer.configure(工厂、连接工厂);
//如有必要,您仍然可以覆盖Boot的一些默认设置。
返回工厂;
}
}
依赖项:spring启动程序activemq
Spring版本:1.4.3.0版本
import javax.jms.ConnectionFactory;
import org.apache.activemq.ActiveMQConnectionFactory;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.autoconfigure.jms.DefaultJmsListenerContainerFactoryConfigurer;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.jms.annotation.EnableJms;
import org.springframework.jms.config.DefaultJmsListenerContainerFactory;
import org.springframework.jms.config.JmsListenerContainerFactory;
@Configuration
@EnableJms
public class JMSConfiguration {
private static final Logger logger = LoggerFactory.getLogger(JMSConfiguration.class);
@Bean ActiveMQConnectionFactory activeMQConnectionFactory() {
ActiveMQConnectionFactory factory =
new ActiveMQConnectionFactory("tcp://somehost:61616");
factory.setTrustAllPackages(true);
return factory;
}
@Bean
public JmsListenerContainerFactory<?> myFactory(ConnectionFactory connectionFactory,
DefaultJmsListenerContainerFactoryConfigurer configurer) {
DefaultJmsListenerContainerFactory factory = new DefaultJmsListenerContainerFactory();
// This provides all boot's default to this factory, including the
// message converter
configurer.configure(factory, connectionFactory);
// You could still override some of Boot's default if necessary.
return factory;
}
}