Мы реализуем маршруты верблюдов для обработки запросов на обслуживание. У нас есть требование предоставить огромный ответ на определенный запрос. Этот ответ может быть настолько большим, что может вызвать проблемы с памятью. Теперь напишем ответ в файле, переместите этот файл на внешний ftp-сервер и вернем имя и расположение файла в качестве ответа HTTP. Что мне действительно нравится делать, так это передать ответ через ответ http в Camel. К сожалению, я не смог найти какие-либо документы/образцы о том, как это сделать.Мой ответ HTTP слишком велик, чтобы хранить в памяти. Как я могу передать ответ на маршрут Camel?
Это наша текущая реализация:
.rest(BASE_URL_VERSION)
.get("/generic/xxxxxx").produces(MIME_MEDIA_TYPE_JSON)
.route()
.process(new ResponseBuilderProcessor()) // this creates the temp file
.to(uriOut) // this moves the file to the external ftp
.process(new AnswerProcessor()); // provides the response where the file location is mentioned
Является ли это выполнимо? Как?