Я решил установить заголовок ответа HTTP и поток для отображения всплывающего окна загрузки в браузере через стандартный сервлет. примечание: я использую Excella, Excel выходной API.

исал код, который генерирует файл Excel, используя REST JAX-RS, и я подтвердил, что созданный файл Excel находится в каталоге сервера GlassFish.

Но моя цель состоит в том, чтобы, когда пользователь нажимал кнопку (которая генерирует Excel .xls), я хотел, чтобы всплывающее окно загрузки отображало вопрос о том, сохранять или открывать файл .xls, как и любые другие веб-службы, выполняющие загрузку файлов любого типа.

Согласно моему поиску, шаг:

создать Excel .xls (СДЕЛАНО)

написать Excel в поток

в файле JAX-RS установите заголовок ответа на что-то вроде:

String fileName = "Blah_Report.xls"; response.setHeader ("Content-Disposition", "attachment; filename =" + fileName);

Мой вопрос заключается в том, что я делаю все это в файле JAX-RS, и у меня нет доступного объекта HttpServletResponse.

Согласно ответу отДобавить заголовок ответа в веб-сервис JAX-RS

Он говорит:

Вы можете вставить ссылку на фактический HttpServletResponse через аннотацию @Context в вашем веб-сервисе и использовать addHeader () и т. Д., Чтобы добавить свой заголовок.

Я не могу понять, что именно это означает без примера кода ..

Ответы на вопрос(3)

Ваш ответ на вопрос