У меня есть серия маршрутов Camel, которые извлекают, преобразовывают, разделяют и объединяют документы XML. Это все отлично работает.
Эти маршруты связаны темами и очередями ActiveMQ.
Все хорошо.
Однако в некоторых случаях у меня есть большое количество документов для обработки, и поскольку компонент JMS Camel преобразует документы XML в текст для сообщения, очереди приводят к преобразованию XML в строку и повторному анализу в документы. более одного раза, что является значительным расходом на обработку.
Я попытался установить для производителя JMS jmsMessageType
значение Object
, но когда потребитель получает сообщение, и я вывожу exchange.getIn().getBody().getClass().getCanonicalName()
, я получаю java.lang.String
.
Какие настройки мне нужно было бы установить для производителя и потребителя, чтобы объекты XML-документа передавались напрямую через тему / очередь ActiveMQ без их обработки в String и повторного анализа?
Спасибо за внимание.