Контекстный путь JSP

Мне дали код веб-приложения Java для развертывания, и моя проблема в том, что, когда я развернул его на своем локальном компьютере, он работает нормально, но когда я развертываю его на нашем сервере разработки, CSS все испорчен. Итак, я просмотрел исходный код страницы и обнаружил, что язык выражений JSP, используемый для получения контекстного пути, не возвращает никакого значения, поэтому страница не может найти правильное расположение CSS.

Вот код для получения контекстного пути:

<link rel="stylesheet" type="text/css" href="${pageContext.request.contextPath}/common/css/somestyle.css" media="all" />

Вот что я получаю при просмотре страницы:

<link rel="stylesheet" type="text/css" href="/common/css/somestyle.css" media="all" />

Я даже пытался развернуть файл EAR, развернутый на сервере разработки, на моем локальном компьютере и наоборот. В результате файл EAR, встроенный в dev, отлично работает на моем локальном компьютере, а моя локальная сборка файла уха испорчена на сервере dev.

Я не могу понять, в чем причина, сервер разработки и мой локальный сервер имеют один и тот же сервер приложений (OC4J), код, структуру каталогов и скрипт ant.

Пожалуйста помоги. Спасибо.


person user1174960    schedule 15.03.2012    source источник
comment
См. stackoverflow.com/questions/2168832/ для некоторых подсказок   -  person Vijay Agrawal    schedule 16.03.2012
comment
Спасибо за ссылку. Я прочитал комментарии в этой теме, и там говорится, что есть 4 основные причины этой проблемы. Итак, поскольку он работает на моем локальном компьютере, элементы номер 2, 3 и 4 отсутствуют, остается только элемент номер 1. На нашем сервере разработки работает OC4J 10.1.3.5, и я проверил в документации Oracle, что он поддерживает JSP 2.0. ссылка И в последней части комментария это там говорится, что может произойти столкновение EL Jars, поэтому я проверил свою библиотеку, и в моих библиотеках нет файлов jar, специфичных для сервера приложений. Я все еще безнадежно застрял...   -  person user1174960    schedule 17.03.2012
comment
Вы пытались выполнить любой другой EL в этом JSP? это работает? например: ${заголовок[пользователь-агент]}. также проверьте журналы сервера приложений на наличие подсказок   -  person Vijay Agrawal    schedule 17.03.2012


Ответы (1)


Вы можете попробовать это. это не решает проблему изящно, но это работает для меня.

<%
String ctx = request.getContextPath();

%>

<link rel="stylesheet" type="text/css" href="<%=ctx%>/common/css/somestyle.css" media="all" />
person Mona Sanqian    schedule 22.01.2014