Маршрутизация сообщений Camel и MultiPart с использованием XML - PullRequest
0 голосов
/ 31 октября 2019

Я получаю многокомпонентное сообщение из очереди JMS (с границей). Как я могу переслать это сообщение в службу REST с использованием Camel? Мне нужно настроить маршрут с помощью XML. Когда я пытаюсь направить сообщение, я получаю 400 ошибок. Кажется, это связано с границей, потому что, когда я установил неправильную границу, служба REST получит сообщение (но не сможет его проанализировать, потому что это ложная граница). Мне нужно переслать сообщение, используя правую границу, я пытаюсь извлечь границу из тела. Кажется правильным, но я получаю ошибку 400.

<route id="testMultipart">
    <from uri="activemq:queue:myqueue"/>
    <setHeader
headerName="Content-Type"><simple>multipart/mixed; boundary=${body.replaceAll("(\--.*?\--)","$1").replaceAll("(\--)","")}</simple></setHeader>
    <setHeader headerName="CamelHttpMethod">
        <constant>POST</constant>
    </setHeader>
    <log message="Got body ${body}"/>
    <to uri="https4://myendpoint?sslContextParametersRef=mySSLContextParameters"/>
</route>

Тело в порядке, стандартное многокомпонентное смешанное сообщениес границами. Есть идеи? Спасибо

...