You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
33 lines
766 B
33 lines
766 B
package org.test |
|
|
|
@Grab("spring-boot-starter-artemis") |
|
@Grab("artemis-jms-server") |
|
import java.util.concurrent.CountDownLatch |
|
|
|
@Log |
|
@Configuration(proxyBeanMethods = false) |
|
@EnableJms |
|
class JmsExample implements CommandLineRunner { |
|
|
|
private CountDownLatch latch = new CountDownLatch(1) |
|
|
|
@Autowired |
|
JmsTemplate jmsTemplate |
|
|
|
void run(String... args) { |
|
def messageCreator = { session -> |
|
session.createObjectMessage("Greetings from Spring Boot via Artemis") |
|
} as MessageCreator |
|
log.info "Sending JMS message..." |
|
jmsTemplate.send("spring-boot", messageCreator) |
|
log.info "Send JMS message, waiting..." |
|
latch.await() |
|
} |
|
|
|
@JmsListener(destination = 'spring-boot') |
|
def receive(String message) { |
|
log.info "Received ${message}" |
|
latch.countDown() |
|
} |
|
|
|
}
|
|
|