2014-01-09 4 views
0

Я хочу, чтобы пользователи получили доступ к папке /shared на моем сервере через веб-приложение, размещенное на Tomcat на том же сервере. Следующие решения я пробовал, но никто из них не работал.Как показать структуру каталогов сервера с помощью Tomcat?

  1. Ввод входа контекста в server.xml
    <Context path="/shared" docBase="/shared/" reloadable="true" crossContext="true"/>

  2. Поставив же контекстную информацию /conf/context.xml внутри Tomcat.

  3. Включая эту же контекстусную информацию в /META-INF/context.xml под моим webapp.

Но когда я пытаюсь получить доступ к нему с помощью http://{myserverip:portnumber}/shared, он возвращается с 404 Error.

Tomcat Версия: OS 7 Сервер: Ubuntu 12,04

Любые предложения?

+0

Вы можете написать свой собственный «файл браузера» сервлет, или вы можете Yous что-то уже существующие, например: http://www.servletsuite.com/servlets/fmanager.htm –

ответ

2

Вам нужно сделать 2 вещи, я не буду рекомендовать это решение, если это не локальный сервер-разработчик, на котором вы хотите поделиться и перечислить свои каталоги.

Во-первых, в/CONF/Catalina/вы создаете shared.xml, который имеет

<Context path="/shared" docBase="/shared/"/>

Во-вторых (и это немного, я не рекомендую), вы должны включить список каталогов в Коты Conf/web.xml - вид на DefaultServlet и изменения списков в true

это влияет на всех веб-приложений на сервере Tomcat

<servlet> 
     <servlet-name>default</servlet-name> 
     <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class> 
     <init-param> 
      <param-name>listings</param-name> 
      <param-value>true</param-value> 
     </init-param> 
     <load-on-startup>1</load-on-startup> 
    </servlet> 

для более точного контроля, вы можете преодолеть это в своем веб-приложении Web.xml, но из своего сценария я не уверен, что у вас его есть.

также см How can I list all the files in folder on tomcat?

+0

Спасибо за ответ. Моим фактическим требованием является «Предоставление Url пользователю для просмотра файлов, но эти файлы не должны быть доступны другим пользователям». Пользователи на своем конце помещают этот url в апплет, который будет создавать 3D-визуализации файла, размещенного на этом URL-адресе. Я не мог найти решения. –

+0

Я реализовал первое решение, но оно не работает. Вторая вещь, которую я не могу сделать, поскольку есть приложение, размещенное на Tomcat. –

+0

То совсем другое. Вам понадобится апплет, чтобы попасть в URL Tomcat для данного файла (используя полный URL-адрес, а не список каталогов) и сервлет для потока файла по указанному URL-адресу - с контролем безопасности. Вам вообще не нужна структура каталогов – JoseK

Смежные вопросы