powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Spring 3 and ${pageContext.request.contextPath}
16 сообщений из 16, страница 1 из 1
Spring 3 and ${pageContext.request.contextPath}
    #37830004
scymaks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какая есть альтернатива тому, чтобы не указывать каждый раз путь вот так вот в JSP:

Код: xml
1.
2.
3.
    ...
        <a href="${pageContext.request.contextPath}/product/list">Product list</a>
    ...



А чтобы например всегда указывать вот такой путь:

Код: xml
1.
2.
3.
    ...
        <a href="/product/list">Product list</a>
    ...



а Spring типа сам бы разрулил бы, что на самом деле, это путь

Код: xml
1.
${pageContext.request.contextPath}/product/list 

?
...
Рейтинг: 0 / 0
Spring 3 and ${pageContext.request.contextPath}
    #37830050
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
scymaks
Код: xml
1.
        <a href="/product/list">Product list</a>

Конкретно в href - только так и нужно указывать.
"Относительно контекста" - просто убираем ведущий слэш. Но тогда возникают ньюансы.
...
Рейтинг: 0 / 0
Spring 3 and ${pageContext.request.contextPath}
    #37830079
scymaks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov ,

а какие подводные камни вот такого решения?

Код: xml
1.
<a href="<spring:url value="/product/list"/>">Product list</a>
...
Рейтинг: 0 / 0
Spring 3 and ${pageContext.request.contextPath}
    #37830088
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
scymaks
Код: xml
1.
<a href="<spring:url value="/product/list"/>">Product list</a>

Если оно развернётся в:
Код: sql
1.
"/product/list"

или в:
Код: sql
1.
"/контекст/product/list"

то - никаких.
...
Рейтинг: 0 / 0
Spring 3 and ${pageContext.request.contextPath}
    #37830368
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: java
1.
<core:url value="/product/list"/>
...
Рейтинг: 0 / 0
Spring 3 and ${pageContext.request.contextPath}
    #37830369
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сорри. В смысле,
Код: java
1.
2.
3.
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="core" %>
...
<a href="<core:url value="/product/list"/>">Product list</a>
...
Рейтинг: 0 / 0
Spring 3 and ${pageContext.request.contextPath}
    #37830373
scymaks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IDVsbruck,

Спасибо! Решили использовать Spring url tag
...
Рейтинг: 0 / 0
Spring 3 and ${pageContext.request.contextPath}
    #37830760
scymaks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так, возник еще один вопрос, по той же теме.

Как резолвить пути for css / images / js ?

ну вот сейчас я в JSP пишу

Код: xml
1.
<img src="<spring:url value="/images/simpleProduct.png"/>"/>



как не указывать всякий раз путь? Как настроить Spring что бы можно было бы просто писать в JSP

Код: xml
1.
<img src="images/simpleProduct.png"/>



или

Код: xml
1.
<img src="/images/simpleProduct.png"/>



или

Код: xml
1.
<img src="./images/simpleProduct.png"/>



лишь бы ничего дополнительно не прописывать в src аттрибуте img тега. Как нужно настроить Spring?
...
Рейтинг: 0 / 0
Spring 3 and ${pageContext.request.contextPath}
    #37830903
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, для этого как бы не предусмотрено, лень - плохой советчик.
Но у меня возникла необходимость иметь в атрибутах абсолютный путь - для мультиязычного проекта указывать расположение картинок в стилях.
Сделал так (для ленивых названия параметров совсем короткие):
springmvc-servlet.xml:
Код: xml
1.
2.
3.
4.
5.
6.
...
	<mvc:interceptors>
		...
		<bean id="attributesInterceptor" class="myproject.interceptors.AttributesInterceptor"/>
	</mvc:interceptors>
...


AttributesInterceptor.java:
Код: java
1.
2.
3.
4.
5.
6.
7.
8.
public class AttributesInterceptor extends HandlerInterceptorAdapter implements Constants {
	public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
		request.setAttribute("sa", SITE_ADDRESS);
		request.setAttribute("ssa", SSL_SITE_ADDRESS);
		request.setAttribute("lang", RequestContextUtils.getLocale(request).getLanguage());
		return true;
	}
}


И дальше перестал заботиться о путях в представлении:
Код: html
1.
2.
3.
4.
5.
		<style type="text/css">
			#someElement {background:url("${sa}/images/${lang}/someImage.png");}
		</style>
		...
		<a href="${sa}/product/list">Product list</a>


Но если это нужно только для ссылок, то пиши просто href="product/list", это равнозначно "{address}/{context}/product/list". Если адрес href="/product/list", то это равнозначно "{address}/product/list". Для варианта сайта "ht tp://ww w.mysite.com/" это без разницы, а вот уже для "ht tp://lo calhost:8080/someproject/" имеет непосредственное значение.
...
Рейтинг: 0 / 0
Spring 3 and ${pageContext.request.contextPath}
    #37830922
scymaks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IDVsbruck,

ну вот у меня как раз всё находится не в ROOT а в отдельном каталоге...

то есть я набираю что-то типа

Код: sql
1.
http://localhost:8080/my



и хочу например на странице, на которую я попадаю введя адрес, например такой:

Код: sql
1.
http://localhost:8080/my/product/list



видны были бы css и images.

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

Код: sql
1.
http://localhost:8080/my/product



причем в коде jsp страниц хочется писать просто вот так вот :

Код: xml
1.
<img src="img/picture.png"/>
...
Рейтинг: 0 / 0
Spring 3 and ${pageContext.request.contextPath}
    #37830961
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IDVsbruckНу, для этого как бы не предусмотрено, лень - плохой советчик
лень - двигатель прогресса. когда лень писать повсюду одни и те же ${context}/images /css и т.д. надо придумать что-то более радикальное
...
Рейтинг: 0 / 0
Spring 3 and ${pageContext.request.contextPath}
    #37830986
scymaks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
chpasha ,

Вы предлагаете написать фильтр?

или вы про

Код: xml
1.
2.
3.
4.
5.
<mvc:default-servlet-handler default-servlet-name="default"/>

<mvc:resources mapping="/css/**" location="/css/"/>
<mvc:resources mapping="/images/**" location="/images/"/>
<mvc:resources mapping="/js/**" location="/js/"/>



?
...
Рейтинг: 0 / 0
Spring 3 and ${pageContext.request.contextPath}
    #37831107
chpasha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
scymaksили вы про
?
я про
Код: html
1.
<img src="/img/picture.png"/>



да. написать фильтр. если в спринге нет аналогичного механизма.
...
Рейтинг: 0 / 0
Spring 3 and ${pageContext.request.contextPath}
    #37833644
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
scymaks
Код: xml
1.
<img src="/images/simpleProduct.png"/>

лишь бы ничего дополнительно не прописывать в src аттрибуте img тега. Как нужно настроить Spring?Никак не нужно.
Опишите соответствующий контекст в настройках web-сервера.
...
Рейтинг: 0 / 0
Spring 3 and ${pageContext.request.contextPath}
    #37833824
scymaks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorov,

а поподробней можно?
...
Рейтинг: 0 / 0
Spring 3 and ${pageContext.request.contextPath}
    #37833848
IDVsbruck
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Похоже, он имеет в виду определение контекста, как, например, это делается в Томкете .
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Spring 3 and ${pageContext.request.contextPath}
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]