Включите статический файл в JSP с переменным именем файла в WebSphere 6 - PullRequest
2 голосов
/ 25 мая 2010

Я пытаюсь включить статический файл в мои JSP на Websphere 6.0.2.17 . Я попробовал это:

<% final String MY_DIR = ResourceBundle.getBundle("mybundle").getString("props.pages.wcm"); %>
<% final String page = ResourceBundle.getBundle("mybundle").getString("page"); %>
<% final String inc = MY_DIR + "/" + bonus; %>
<%@include file="<%= inc %>"%>

Путь - / wcm / some / other / dir / page, и я могу с радостью распечатать его с помощью out.write(inc). К сожалению, includejsp:include) вообще не включает файл. Там нет сообщения об ошибке, но содержимое не включено ... Файл доступен через браузер.

Должен ли я создать полную JSP для этой работы? Мне просто нужен HTML-файл.

Обновление

Поскольку рано или поздно будет добавлено больше страниц, я решил создать собственную библиотеку тегов для этого случая. Таким образом я могу ограничить функциональность и установить базовый каталог для моего статического содержимого в файле свойств.

Ответы [ 2 ]

0 голосов
/ 27 мая 2010

Я пробовал через jsp:include, и файл был включен отлично.

Помните, что вы должны указывать относительный путь, а не абсолютный.

0 голосов
/ 25 мая 2010

Попробуйте использовать RequestDispatcher.include ():

<%
RequestDispatcher r = request.getRequestDispatcher(inc);
r.include(request, response);
%>

Это похоже на директиву include, за исключением того, что страница, которую вы включаете, будет обрабатываться каждый раз (если это JSP или сервлет).Директива include обрабатывает страницу только один раз, когда JSP-файл, в котором находится директива, компилируется.

...