Форум программистов, компьютерный форум, киберфорум
Java EE (J2EE)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/8: Рейтинг темы: голосов - 8, средняя оценка - 5.00
15 / 14 / 10
Регистрация: 22.03.2010
Сообщений: 695
1

Скачивание файла в jsf

07.10.2016, 20:22. Показов 1560. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте. Помогите, пожалуйста, решить проблему.
Приложение создает файл. Кладет его в /temp/file.pdf. Мне нужно на jsf странице сделать кнопку, при нажатии на которую будет происходить скачивания через браузер. Как это можно организовать?
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
07.10.2016, 20:22
Ответы с готовыми решениями:

Скачивание файла с сервера
Здравствуйте, уважаемые. Очень нужна ваша подсказка либо помощь. Необходимо, чтобы при обращении к...

Скачивание файла из сервлета
В сервлете генерирую PDF файл и как сделать, чтобы всплывало окошко и предлагало его скачать? Щас...

JSF 2.0
Возможно ли в JSF сделать ComboBox (чтобы можно было вводить свои значения).

JSF + JS
Все привет. Интересует как из кода JS можно обратится к методу бина.. Мне это необходимо для...

2
Эксперт Java
378 / 370 / 114
Регистрация: 30.06.2010
Сообщений: 1,445
08.10.2016, 08:31 2
Тыц или сразу тыц сюда

З.Ы. Один из самых главных навыков разработчика - находить информацию быстро и самостоятельно
0
15 / 14 / 10
Регистрация: 22.03.2010
Сообщений: 695
08.10.2016, 22:25  [ТС] 3
Лучший ответ Сообщение было отмечено parkito как решение

Решение

LeX BB, Беру типичный пример
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
public void downloadFile() {
        File file = new File("/tmp/Report.pdf");
        HttpServletResponse response = (HttpServletResponse) FacesContext.getCurrentInstance()
                .getExternalContext().getResponse();
        response.setHeader("Content-Disposition", "attachment;filename=file.txt");
        response.setContentLength((int) file.length());
        ServletOutputStream out = null;
        try {
            FileInputStream input = new FileInputStream(file);
            byte[] buffer = new byte[1024];
            out = response.getOutputStream();
            int i = 0;
            while ((i = input.read(buffer)) != -1) {
                out.write(buffer);
                out.flush();
            }
            FacesContext.getCurrentInstance().getResponseComplete();
        } catch (IOException err) {
            err.printStackTrace();
        } finally {
            try {
                if (out != null) {
                    out.close();
                }
            } catch (IOException err) {
                err.printStackTrace();
            }
        }
Javascript
1
<h:commandButton value="Download" action="#{beanController.downloadFile}"></h:commandButton>
При нажатии на кнопку, браузеры не реагируют. Файл просто появляется в загрузках.

Пробовал несколько примеров.
0
08.10.2016, 22:25
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.10.2016, 22:25
Помогаю со студенческими работами здесь

JSF 2.0
Можно ли в JSF 2.0 вызвать нажатие кнопки?

JSF 2.0
Можно ли в &lt;h:inputText&gt; вывести значение поля?

Jsf(facelets)
Привет всем. Создал страничку авторизации пользователя(Имя+ пароль). Необходимо захэшировать...

Webix и jsf
Доброе утро! У меня было задача вывести на браузер отчет я взял демку. Она работает в html но если...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru