Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> RESTful. Можно ли вернуть фаил? DOC или PDF.  
:(
    Опции темы
azz
Дата 7.4.2009, 12:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 129
Регистрация: 12.9.2005
Где: Munchen (Deutschl and)

Репутация: нет
Всего: нет



Я хочю написать несколько сервисов с помощью Jersey (NetBeans). К сожалению я все-еще не нашел возможности в RESTful сервисах возвращать что-либо кроме строки. Может кто подскажет возможно ли это и если да то как?
PM MAIL   Вверх
powerOn
Дата 7.4.2009, 15:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


software saboteur
****


Профиль
Группа: Участник
Сообщений: 4367
Регистрация: 7.10.2005

Репутация: 28
Всего: 159



В простейшем случае отправить файл можно следующим способом:

Код

    @GET
    @Path("/download")
    @Produces("*/*")
    public Response download()
    {
        try
        {
            ResponseBuilder responseBuilder = Response.ok();
            // добавляем информацию о файле в заголовок http-ответа.
            responseBuilder.header("content-disposition", "attachment; filename=" + "somefilenamehere.pdf");
            // далее устанавливаем контент файла ввиде байтового массива, который был предварительно прочитан с диска.
            responseBuilder.entity(new byte[]{});
            return responseBuilder.build();
        }
        catch (Exception ex)
        {
            throw new WebApplicationException(ex);
        }
    }







--------------------
user posted image нет времени думать - нужно писать КОД!

PM MAIL   Вверх
fixxer
Дата 7.4.2009, 15:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 672
Регистрация: 14.9.2006
Где: Саратов, Россия

Репутация: 4
Всего: 27



еще по идеологиии REST нужно смотреть какой формат ответа был запрошен, такой и отдавать.


--------------------
user posted image
PM MAIL ICQ   Вверх
azz
Дата 7.4.2009, 16:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 129
Регистрация: 12.9.2005
Где: Munchen (Deutschl and)

Репутация: нет
Всего: нет



powerOn: Огромное спосиба, сегодня уже убегаю, завтра буду пробовать. 
fixxer: В одном сдучае это жпеги а в другом или пдф или док. Зарание неизвесно. 
Только что нашел что счас на основе Jersey делают WebDav (https://webdav.dev.java.net/). Ктонить сталкивался? Может мне это взять?
Я буду делать доступ к библиотеке документов через вэб.

PM MAIL   Вверх
fixxer
Дата 7.4.2009, 16:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 672
Регистрация: 14.9.2006
Где: Саратов, Россия

Репутация: 4
Всего: 27



Цитата(azz @ 7.4.2009,  16:26)
fixxer: В одном сдучае это жпеги а в другом или пдф или док. Зарание неизвесно. 

Дык, в запросе в хедере должен указываться желаемый тип ответа.


--------------------
user posted image
PM MAIL ICQ   Вверх
powerOn
Дата 7.4.2009, 17:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


software saboteur
****


Профиль
Группа: Участник
Сообщений: 4367
Регистрация: 7.10.2005

Репутация: 28
Всего: 159



обработать параметры запроса и указать тип возвращаемого контента возможность у Jersey есть.


--------------------
user posted image нет времени думать - нужно писать КОД!

PM MAIL   Вверх
azz
Дата 8.4.2009, 09:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 129
Регистрация: 12.9.2005
Где: Munchen (Deutschl and)

Репутация: нет
Всего: нет



fixxer: В запросе только id документа в базе. Сервис должен через базу узнавать какой фаил на диске имеется в виду. Формат файла может быть произвольным. Иногда они вообще будут находится в базе данных в виде LOB.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.1017 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.