Скачать файл с JSF, не работающим с Icefaces

Мне нужно реализовать функцию загрузки файлов для моего приложения. Я следовал этому примеру Принудительное сохранение диалогового окна из любого веб-браузера из приложения JSF, но диалоговое окно сохранения никогда не появляется, пока код выполняется нормально. После того, как я посмотрел на свой http-ответ, я увидел, что он завернут в ответ с красивыми лицами, поскольку я также использую красивые лица. Есть ли что-то, что я должен изменить, чтобы он работал с красивыми лицами (при условии, что это причина того, что он не работает)?

РЕДАКТИРОВАТЬ:

Похоже, проблема была не в Pretty Faces, а в Icefaces. Просто добавляя библиотеки icefaces в мое приложение, метод загрузки не работает, и диалоговое окно никогда не появляется. При удалении работает. Любые идеи?


person user579674    schedule 24.07.2012    source источник
comment
Рассматривали ли вы ice:outputResource?   -  person StockB    schedule 27.07.2012


Ответы (1)


Я не думаю, что PrettyFaces является причиной того, что это не работает. PrettyFaces изменяет только методы response.encodeURL() и response.encodeRedirectURL() для отображения ссылок.

Большинство людей выполняют загрузку с помощью специального сервлета, однако вы можете делать это с помощью JSF, для этого нужно лишь немного повозиться и настроить.

Это пример того, как сделать что-то подобное с помощью PrettyFaces: http://ocpsoft.org/prettyfaces/serving-dynamic-file-content-with-prettyfaces/

person Lincoln    schedule 24.07.2012
comment
Я видел этот пример раньше, но в своем приложении я не хочу делать это с помощью URL-адресов. Я хочу, чтобы это был метод, вызываемый как действие commandLink/commandButton. Я пробовал много разных вещей, которые нашел, но диалоговое окно просто не появляется. - person user579674; 25.07.2012