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

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

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

Приложение развернуто в /var/lib/tomcat6/webapps/ROOT/каталоге, а imagesкаталог существует в war. Когда я развертываю приложение, я создаю символическую ссылку на 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();

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

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

решение1

Пробовали ли вы добавить следующее в свой context.xmlфайл?

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

Связанный контент