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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> upload + re-deploy, где правильно хранить загруженные файлы? 
V
    Опции темы
vectorrr
Дата 31.8.2009, 10:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Добрый день! Нужна светлая мысль =)

Сделал аплоад фоток (tomahawk + jboss) на сервер, но не могу решить где их следует размещать, что бы они не пропадали после перезапуска сервера. 

Сейчас они размещаются в контексте развернутого приложения, но это неправильно, т.к при редеплое все удаляется. Если хранить их в каком-нибудь другом месте (скажем, для примера, C:\photos) как к ним получить доступ из приложения, что бы можно было отобразить в браузере? Ну или подскажите где их можно размещать в jboss

Всем заранее спасибо =)
PM MAIL   Вверх
MisterCleric
Дата 31.8.2009, 11:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Привет. Ответ тебе будет таков: 
Есть у jboss несколько системных переменных, одна из которых говорит о том, каков абсолютный путь JBOSS. А от него ты можешь сам уже плясать. 
Я сам пользуюсь такиим способом хранения загруженных файлов, так как заказчики не хотят их в базе хранить и не хотят выделять отдельный ресурс для репозитория.
Вот эта переменная: 
Код

System.getProperty("jboss.server.home.dir");

Это будет путь например таков: D:\Applications\jboss-4.2.2.GA\server\all\

а внутри уже можешь сделать папку для хранения файлов. Туда их ложи и от туда сервлетом вытягивай


--------------------
ПРИШЕЛ, УВИДЕЛ - ПЕРЕПИСАЛ...
PM MAIL ICQ   Вверх
MisterCleric
Дата 31.8.2009, 11:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Да, вот список системных пропертей JBOSS
JBOSS System properties


--------------------
ПРИШЕЛ, УВИДЕЛ - ПЕРЕПИСАЛ...
PM MAIL ICQ   Вверх
vectorrr
Дата 31.8.2009, 11:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Привет!

Спасибо за ответ. Но проблема не в том, что как получить путь к файлу (все пути сохраняются в базе), а проблема в том как их отобразить тегом <t:graphicImage> в jsf.  Сейчас из бэкинг бина в атрибут value подставляется URL фотки.

Сорри, малость чушь написал =) Вообщем путь к главной папке беру из web.xml, а к конкретному файлу id пользователя + всякая другая белеберда, а использование System.getProperty("jboss.server.home.dir") - по сути получается то же самое

Это сообщение отредактировал(а) vectorrr - 31.8.2009, 12:06
PM MAIL   Вверх
MisterCleric
Дата 31.8.2009, 12:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



я так понимаю рузультатом этого тега будет htmlTag img
Естественно ему нужно урлу. А урлой может быть вызов сервлета, который в респонз пихает байты имеджа. Ты ему даешь ИД картинки, а он у себя из базы достает путь относительный по ИД, и прибавляет его к абсолютному пути из JBOSS.
Собственно такой принцип у меня. Да, и про картинки речь в посте не шла...
Вот пример как у меня в базе

  ID          CONTENTTYPE                  FILENAME          PATH
1083 application/vnd.ms-excel    2009.xls              /2095

А вот кусок кода из Action:
Код

        File dir = new File(filesPath);

        file = facade.findFileById(file);

        String filePath = file.getPath() + File.separator + file.getName();
        file = new File(dir + File.separator + filePath);
        contentType = file.getContentType();
        contentDisposition = "attachment; filename=\"" + file.getName() + "\"";


где filesPath как раз абсолютный путь к папке с файлами.
Правде здесь у меня на загрузку файлов из броузера. Для картинок надо без contentDisposition.


--------------------
ПРИШЕЛ, УВИДЕЛ - ПЕРЕПИСАЛ...
PM MAIL ICQ   Вверх
vectorrr
Дата 31.8.2009, 12:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



ок, спасибо. попробую

кстати, нашел то же самое =)

http://forums.sun.com/thread.jspa?threadID=750411

Спасибо за совет!

Это сообщение отредактировал(а) vectorrr - 31.8.2009, 12:34
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.1155 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


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

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