Назад | Перейти на главную страницу

Tomcat - символическая ссылка на каталог изображений не отображает изображения

У меня есть веб-приложение Java, развернутое на Tomcat 6 в Ubuntu 9.04. Для некоторых изображений я хочу создать символическую ссылку на другой каталог изображений. Это позволит мне ссылаться на образы, которые остаются на сервере, даже если приложение будет удалено и повторно развернуто.

Приложение развернуто в /var/lib/tomcat6/webapps/ROOT/ каталог и images каталог существует на войне. Когда я развертываю приложение, я создаю символическую ссылку на saved_images каталог, поэтому есть путь вроде /var/lib/tomcat6/webapps/ROOT/images/saved_images/.

В приложении у меня есть такой код:

File file = new File("/var/lib/tomcat6/webapps/ROOT/images/saved_images/abc.jpg");
boolean fileExists = file.exists();

В fileExists значение истинно, когда код выполняется, но изображения не отображаются на странице, когда на них ссылаются, например images/saved_images/abc.jpg.

Разрешения изображений в /var/lib/tomcat6/webapps/ROOT/images и /var/lib/tomcat6/webapps/ROOT/images/saved_images одинаковы (владелец и группа - tomcat6, то же самое, что и другие файлы, развернутые в войне). Если я удалю символическую ссылку и помещу файлы saved_images в каталог с тем же именем, изображения будут отображаться. Как я могу сделать так, чтобы на странице отображались эти изображения, если каталог представляет собой символическую ссылку, без необходимости копировать файлы в реальный каталог?

Вы пробовали добавить в свой context.xml файл?

<Context path="/foobar" allowLinking="true">