ActiveMQ y Spring
De Dos Ideas.
Revisión del 14:51 8 jul 2011 de Parivero (discusión | contribuciones) (Página creada con 'La integración de [ActiveMQ] con spring es muy simple. <code xml> <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:am…')
La integración de [ActiveMQ] con spring es muy simple.
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:amq="http://activemq.apache.org/schema/core"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://activemq.apache.org/schema/core
http://activemq.apache.org/schema/core/activemq-core-5.5.0.xsd">
<amq:broker useJmx="false" persistent="false">
<amq:transportConnectors>
<amq:transportConnector uri="tcp://localhost:0" />
</amq:transportConnectors>
</amq:broker>
<amq:queue id="destination" physicalName="org.apache.activemq.spring.Test.spring.embedded"/>
<amq:connectionFactory id="jmsFactory" brokerURL="vm://localhost"/>
<bean id="producerJmsTemplate" class="org.springframework.jms.core.JmsTemplate">
<property name="connectionFactory">
<bean class="org.springframework.jms.connection.SingleConnectionFactory">
<property name="targetConnectionFactory">
<ref local="jmsFactory" />
</property>
</bean>
</property>
</bean>
<bean id="consumerJmsTemplate" class="org.springframework.jms.core.JmsTemplate">
<property name="connectionFactory" ref="jmsFactory"/>
</bean>
</beans>
Mediante la configuración anterior podríamos realizar un test de componentes mockeando el servidor de mensajería y realizar la siguiente comprobación:
@Autowired
@Qualifier("producerJmsTemplate")
private JmsTemplate producerJmsTemplate;
@Autowired
@Qualifier("consummerJmsTemplate")
private JmsTemplate consummerJmsTemplate;
@Test
public void envioMensaje_HolaMundo_obtengoMensajeHolaMundo() {
String mensaje = "Prueba";
producerJmsTemplate.convertAndSend("destination", mensaje);
String mensajeRecibido =
(String)consummerJmsTemplate.receiveAndConvert("destination");
assertEquals(mensaje,mensajeRecibido);
}