Отображение виртуального каталога WebLogic не работает - PullRequest
4 голосов
/ 23 июля 2011

У меня очень неприятная проблема с отображением виртуальных каталогов в моем очень простом приложении WebLogic 11g. Я установил WebLogic 11g OEPE, который устанавливает WebLogic Server 10.35. Я считаю, что это установлено правильно, потому что я могу развернуть гораздо более сложное приложение, которое работает нормально ... за исключением моей проблемы с сопоставлением виртуальных каталогов.

Я хочу получить доступ к файлам из каталога вне веб-приложения, H: \ Backup.

Вот мое полное приложение, а это мои точные файлы.

wl_test / index.html

<html>
<head><title>WebLogic Test</title></head>

<body>
<h1>This is another new test<br>
</body>
</html>

wl_test / интернет-INF / web.xml

<web-app>
    <welcome-file-list>
        <welcome-file>index.html</welcome-file>
    </welcome-file-list>
</web-app>

wl_test / WEB-INF / weblogic.xml

<weblogic-web-app>
    <virtual-directory-mapping>
         <local-path>H:/Backup/</local-path>
         <url-pattern>/files/*</url-pattern>
         <url-pattern>*.txt</url-pattern>
    </virtual-directory-mapping>
</weblogic-web-app>


Когда я обращаюсь к файлу HTML, 'http://localhost:7002/wl_test/index.html', загружается совершенно нормально.

Однако, когда я пытаюсь загрузить любой из следующих двух URL-адресов, они оба завершаются ошибкой HTTP 404. И да, оба этих файла, one.ini и asdf.txt, находятся в каталоге H: \ Backup.

  1. http://localhost:7002/wl_test/files/one.ini'
  2. http://localhost:7002/wl_test/asdf.txt'

Что может быть не так с этой тривиальной настройкой?

Я начинаю думать, что не понимаю, как это должно работать.

Ответы [ 2 ]

4 голосов
/ 26 июля 2011

Мне кажется, я понимаю, что изменилось и как все исправить.

Были две проблемы с отображением виртуального каталога.

Во-первых, local-path не может быть диском SUBSTed MS-DOS. Я не понимаю почему, но WebLogic это не нравится.

Во-вторых, когда url-pattern содержит папку, например / files / *, эта папка должна существовать в каталоге local-path .

Обе они разрешены на сервере JRun, с которого они переносятся.

Вздох, Рэнди Стегбауэр

0 голосов
/ 23 июля 2011

Я думаю, что в комбинации нескольких элементов шаблона url есть что-то немного глупое.Вот пример, показывающий общий файл 404 из моих архивов.

Часть NotFoundWeb.war / WEB-INF / web.xml выглядит следующим образом:

<error-page>
<error-code>404</error-code>
<location>/error/404.html</location>
</error-page>

Часть NotFoundWeb.war / WEB-INF / weblogic.xml выглядит следующим образом:

<wls:virtual-directory-mapping>
<wls:local-path>d:\temp\notfound</wls:local-path>
<wls:url-pattern>*.html</wls:url-pattern>
</wls:virtual-directory-mapping>

У меня есть файл в файловой системе: d: \ temp \ notfound \ error \ 404.html

Итакво время выполнения, когда я набираю что-то вроде: http://localhost:7001/NotFoundWeb/somebadurl

Я получаю страницу ошибки из файловой системы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...