Я создал верблюжий (2.20.1) маршрут, используя отличный DSL.Мне нужно использовать многоадресную рассылку для 2 конечных точек, а именно.ftps и файл.Если порядок маршрутов - ftps и file, то file является свойством, записанным на ftp-сервере, но в файловой системе записывается пустой файл (размером 0 байт).Если я изменяю порядок, т.е. файл и затем ftps, тогда файл записывается в файловую систему правильно, а пустой файл записывается на ftp-сервер.Он отлично работает на FTP-сервере Apache Mina, но с клиентским FTP-сервером он работает, как указано выше.
Я пробовал оба варианта многоадресной рассылки:
.to("ftps:....").to("file:...")
, а также
.to("ftps:...").to("file:..."))
Также пробовал parallelProcessing()
, но результат все тот же.
camelContext.addRoutes(new RouteBuilder() {
def void configure() {
from("file:///home/xyz/?fileName=file.txt&charset=utf-8&noop=true")
.multicast()
.to("ftps://localhost:21/files?username=anonymous&password=anonymous&binary=true&fileName=file.txt&passiveMode=true&fileExist=Fail")
.to("file://${directory}?fileName=\${file:name}-\${date:now:yyyyMMddHHmmssSSS}")
}
})
Я ожидаю, что многоадресная рассылка должна записывать одинаковое содержимое в обе конечные точки без потери данных.