У меня есть activemq: очередь inQueue в моем JbossFuse.Как использовать те сообщения JMS, которые поставлены в очередь, чтобы мой экземпляр процесса запускался в загрузочном приложении Spring, интегрированном с Camunda?Будет ли полезна какая-либо ссылка на ссылки или образцы?
В настоящее время я могу использовать сообщения из activemq, но я не уверен, как использовать сообщения из приложения Jboss Fuse ActiveMQ?
@Component
public class ActiveMQConsumer {
@Autowired
CamelContext camelContext;
@Autowired
ProducerTemplate producerTemplate;
@SuppressWarnings("unchecked")
@JmsListener(destination = "inQueue")
public void consumeMessage(JSONObject employeeRecord) throws Exception {
if (employeeRecord instanceof JSONObject) {
HashMap<String, Object> employeeRecordMap = (HashMap<String, Object>) employeeRecord.toMap();
Exchange exchange = ExchangeBuilder.anExchange(camelContext).withBody(employeeRecordMap).build();
HashMap<String, Object> employeeDetails = (HashMap<String, Object>) employeeRecordMap.get("employeeDetails");
exchange.setProperty("CamundaBpmBusinessKey", employeeDetails.get("employeeADId"));
producerTemplate.send("camunda-bpm:start?processDefinitionKey=camunda-camel-activeMQ", exchange);
}
}
}
приложения.properties
# activeMQ config
spring.activemq.broker-url=tcp://localhost:61616
spring.activemq.user=admin
spring.activemq.password=admin
Ожидается использование сообщений от JbossFuse.