Я пытаюсь найти способ обеспечить загрузку CSV через портлет Spring 3. У меня есть метод, который использует аннотацию @ResourceMapping
для определения обработчика, который принимает некоторые параметры отчета в форме @ModelAttribute
, строит отчет и возвращает его. Уловка-22, с которой я сталкиваюсь, проверяет параметры, отправляемые из клиентской формы.
Если я сделаю обработчик @ResourceMapping
, я смогу установить заголовки и записать отчет как с использованием ResourceResponse
, но я не могу понять, как перенаправить пользователя обратно в представление портлета с ошибками, когда их ввод не прошел проверку. Однако, если я сделаю это @ActionMapping
, я смогу затем проверить BindingResult
и переслать их обратно в форму по мере необходимости, но ActionResponse
не позволяет мне установить заголовок Content-Disposition или записать байты CSV, что является сортировкой критических для отправки отчета обратно.
Я в полной растерянности, так как даже не знаю, какие у меня есть варианты. Возможно ли вообще сделать то, что я пытаюсь сделать с портлетом? Есть ли другие примеры, на которые я мог бы посмотреть для возможного обходного пути?