powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / хранение файлов
25 сообщений из 152, страница 1 из 7
хранение файлов
    #38868165
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть проект tomcat, jsp
проетирование под виндой, работа под debian
нужно сохранять файлы переданные с клиента
создал папку /сервер/pic/...
запускаю, war рзворачивается , всё работает, картинки сохраняются, отображаются
но если повторто запустить(после правки/добавления) - соответственно папка /сервер/pic/...будет пустая, хотя в базе имена файлов сохранены и вместо картинок фиг
и на рабочем сервере такая же фигня будет при апгрейте (если вручную эту папку не сохранить и после апгрейта не восстановить)
как можно обойти эту проблему?
...
Рейтинг: 0 / 0
хранение файлов
    #38868181
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадякак можно обойти эту проблему? Как обычно .
...
Рейтинг: 0 / 0
хранение файлов
    #38868236
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorovвадякак можно обойти эту проблему? Как обычно .
там много букф, я, к сожалению, не владею англицким настолько хорошо, чтоб там найти нужное...
ткни на нужное место.
...
Рейтинг: 0 / 0
хранение файлов
    #38868647
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
к сожалению я не смог там найти решени ....
...
Рейтинг: 0 / 0
хранение файлов
    #38868660
rema174
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вадя,

говорят, можно сохранять в $TOMCAT_HOME
...
Рейтинг: 0 / 0
хранение файлов
    #38868670
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вопрос как?
...
Рейтинг: 0 / 0
хранение файлов
    #38868686
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хранить можно где угодно. Главное, чтобы "где угодно" не попадало в контекст приложения.
Ещё можно развёртывать не war, а каталог - не по стандарту, но существенно сокращает время развёртывания и не удаляет то, что было записано внутри каталога приложения. Но и в этом случае оптимально выделять для хранения отдельный ресурс, т.к. пользовательские данные определённо не являются частью приложения.
Местоположение такого хранилища задаёт или параметр контекста или JNDI. В обоих случаях администратор сервера имеет возможность настройки хранилища адекватным образом.
...
Рейтинг: 0 / 0
хранение файлов
    #38868750
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадявопрос как?

Вадя посмотри все переменные семейства System.properties. Там есть маршруты
к $home, $tmp, $java-home, $your_web_server_home и привязывайся к ним.
...
Рейтинг: 0 / 0
хранение файлов
    #38868753
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ни к одному из этих каталогов нельзя привязывать хранилище файлов.
...
Рейтинг: 0 / 0
хранение файлов
    #38868759
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тут ещё надо чтоб картинки было доступны для тега src
можно ли как-то сделать редирект в фильтре ?
типа вызов идет src="pic/preview/pic.jpg" , фильтруется pic/preview/ и редиректится на c:/тополя/ля/ля?
...
Рейтинг: 0 / 0
хранение файлов
    #38868761
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
загрузить и сохранить картинку можно куда угодно. как её от туда вытащить?
не gthtljdfnm же её в base64.
...
Рейтинг: 0 / 0
хранение файлов
    #38868782
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадятипа вызов идет src="pic/preview/pic.jpg" , фильтруется pic/preview/ и редиректится на c:/тополя/ля/ля?"Во многобукв" доке на контексты есть многобукав про docBase, который может смотреть куда угодно.
...
Рейтинг: 0 / 0
хранение файлов
    #38868795
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorovвадятипа вызов идет src="pic/preview/pic.jpg" , фильтруется pic/preview/ и редиректится на c:/тополя/ля/ля?"Во многобукв" доке на контексты есть многобукав про docBase, который может смотреть куда угодно.

эти много букв я понял как это будет место расположения всего сервера, куда и будет рзвертыватьмя .war, затирая всё старое
...
Рейтинг: 0 / 0
хранение файлов
    #38868815
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяэти много букв я понял как это будет место расположения всего сервера, куда и будет рзвертыватьмя .war, затирая всё староеКроме собственно приложения можно определить кучу других контекстов. В том числе - для статических ресурсов, куда никакие war-ы развёртываться не будут.
...
Рейтинг: 0 / 0
хранение файлов
    #38868820
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторКроме собственно приложения можно определить кучу других контекстов. В том числе - для статических ресурсов, куда никакие war-ы развёртываться не будут.
дай пример как это сделать.
и как на такой ресурс сослаться для src="......"
я не смог найти такого....
...
Рейтинг: 0 / 0
хранение файлов
    #38868826
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадядай пример как это сделать Defining a context и как на такой ресурс сослаться для src="......""Для внешнего мира" имя ресурса определяется именем контекста:
Код: plaintext
  ${catalina.base}/webapps/ctx1/
даёт контекст, который "будет известен" как /ctx1. Как указать контейнеру, что статические ресурсы этого контекста находятся в другом месте - по ссылке выше.

P.S. Имхо, лучше уходить от свалки в webapps и приучиться размещать описатели контекстов там, куда указывает Host xmlBase .
Этот вариант не будет затирать настройки, сделанные администратором сервера, при развёртывании новой версии приложения. Но требует, чтобы администратор произвёл такую настройку при первоначальном развёртывании вашего приложения.
...
Рейтинг: 0 / 0
хранение файлов
    #38868838
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я это читал, и нашёл подобный 12083677
только конкретного примера применения нет.
...
Рейтинг: 0 / 0
хранение файлов
    #38869497
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
up
есть предложения?
...
Рейтинг: 0 / 0
хранение файлов
    #38869532
olzhas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вадя,

посмотрите мою тему http://www.sql.ru/forum/1137931/bezopasnost-staticheskih-falov?mid=17205297#17205297
у меня похожая задача
...
Рейтинг: 0 / 0
хранение файлов
    #38869589
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
olzhasвадя,

посмотрите мою тему http://www.sql.ru/forum/1137931/bezopasnost-staticheskih-falov?mid=17205297#17205297
у меня похожая задача

оч хорошо, проверю...

если не секрет - можешь выслать твой вариант применения фильтра?
...
Рейтинг: 0 / 0
хранение файлов
    #38869652
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадятолько конкретного примера применения нет.Задаём параметр контекста и вычитываем его в init() сервлета.
Если не выносим описатели за пределы webapps, то примерно так:
Код: xml
1.
2.
3.
4.
5.
6.
7.
<!-- META-INF/context.xml сервлета -->
<Context>
  <Parameter name="имяПараметра" value="Путь/Хранилище" />
</Context>

<!-- pic/META-INF/context.xml,  указываем то же самое местоположение -->
<Context docBase="Путь/Хранилище" />

Ответственность за то, чтобы в двух местах были указаны одинаковые значения - лежит на администраторе сервера.
В частном, но распространённом случае можно задать местоположение при помощи свойства:
Код: plaintext
  java -DимяСвойства="Путь/Хранилище" прочие аргументы
и тогда будет:
Код: xml
1.
2.
3.
<Parameter name="имяПараметра" value="${имяСвойства}" />
<!-- и, аналогично -->
<Context docBase="${имяСвойства}" />

Имена параметра и свойства никак не связаны между собой - могут быть одинаковы, могут быть разными.
...
Рейтинг: 0 / 0
хранение файлов
    #38869685
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторЕсли не выносим описатели за пределы webapps, то примерно так:
проблема именно в выносе за webapps
в пределах webapps я моггу сделать редирект, это проще.

2olzhas
что-то у меня не получается...
...
Рейтинг: 0 / 0
хранение файлов
    #38869706
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у меня проект Netbeans
...
Рейтинг: 0 / 0
хранение файлов
    #38869746
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяпроблема именно в выносе за webappsОписатель (deployment descriptor) сильно не эквивалентен значению одного из параметров этого описателя (docBase).
За пределами webapps (независимо) может находиться любой из них.
...
Рейтинг: 0 / 0
хранение файлов
    #38869818
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
от прочитанного я несколько туплю...
у меня есть только один context.xml:

<?xml version="1.0" encoding="UTF-8"?>
<Context antiJARLocking="true" path="/mo" />

более подробнее можно...
...
Рейтинг: 0 / 0
25 сообщений из 152, страница 1 из 7
Форумы / Java [игнор отключен] [закрыт для гостей] / хранение файлов
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]