Я пытаюсь реализовать request-reply pattern с помощью Camel, Spring и ActiveMQ. Что мне нужно сделать, это чтение файла CSV по очереди. Тогда для каждой строки: ЗапросКак реализовать запрос Образец отзыва
- Construct на основе значений строк из CSV
- Отправить запрос в очередь
- Другой компонент должен забрать сообщение, обработать запрос и отправить ответ другая очередь сообщений (известная продюсеру, поэтому производитель может получить ответ).
У меня код ниже работает. Теперь скажем, что в Процессоре я создаю ответ.
Мои вопросы:
- Как я могу отправить ответ обратно?
- Как я могу использовать отклик?
public class MyRouteBuilder extends RouteBuilder {
public static void main(String[] args) throws Exception {
new Main().run(args);
}
public void configure() {
from("file:/Users/aviad/ws/integ/src/data?fileName=lines.txt&noop=true&idempotent=true")
.split()
.tokenize("\\n")
.inOut("activemq:req");
from("activemq:req")
.process(new Processor() {
public void process(Exchange exchange) throws Exception {
System.out.println(exchange.getIn().getBody(String.class));
System.out.println("jmscorrelationid=" + exchange.getIn().getHeader("jmscorrelationid"));
System.out.println("jmsdestination=" + exchange.getIn().getHeader("jmsdestination"));
}
});
}
}
Возможный дубликат [Использовать шаблон запроса-ответа с использованием ActiveMQ, Camel и Spring] (http://stackoverflow.com/questions/16243433/implement-request-reply-pattern-using-activemq-camel-and-spring) –
не дубликат. скорее более конкретным. – aviad