2013-06-24 3 views
0

Я так долго пытаюсь использовать изображение на своем веб-сайте, которое я создал весной. Когда я Google/поиск на StackOverflow это, его сказал, что если я хочу использовать это в .jsp:Показать изображение на проекте Spring MVC в .jsp view (html)

<img src="<c:url value='resources/face.jpg'/>"/> 

мне нужно реализовать это в файле web.xml:

<!--<servlet-mapping>--> 
    <!--<servlet-name>default</servlet-name>--> 
    <!--<url-pattern>*.jpg</url-pattern>--> 
<!--</servlet-mapping>--> 

и

<servlet> 
    <servlet-name>restservices</servlet-name> 
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
    <init-param> 
     <param-name>contextConfigLocation</param-name> 
     <param-value></param-value> 
    </init-param> 
    <load-on-startup>1</load-on-startup> 
</servlet> 

и в остальном-услуги-config.xml Я приклеил это:

 <!-- the mvc resources tag does the magic --> 
<mvc:resources mapping="/resources/**" location="/resources/" /> 

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

И все еще не могу заставить его работать! Что я делаю неправильно? Консоль дает мне это: method.annotation.RequestMappingHandlerMapping - Did not find handler method for [/]

У меня есть изображение в папке ресурсов, которая находится в \ проекта \ SRC \ главная \ ресурсы

консоль дает мне это, когда я пытаюсь открыть изображение (что привычка показать на веб-сайте):

servlet.resource.ResourceHttpRequestHandler - No matching resource found - returning 404 

Спасибо в forehand!

+0

Никто не знает об этом? – benskiiii

+0

Какую версию Spring WebMVC вы используете? – Sandro

+0

Каков статус вашего вопроса @benskiiii? Вы не приняли ответа. Вы все еще сомневаетесь - у вас все еще есть вопрос? Не могли бы вы спросить в этом случае? – Sandro

ответ

0

Если servlet-name вашего DispatcherServlet является restservices ваш servlet-mapping должен выглядеть следующим образом:

<servlet-mapping> 
    <servlet-name>restservices</servlet-name> 
    <url-pattern>/</url-pattern> 
</servlet-mapping> 

Параметр вашего DispatcherServletcontextConfigLocation должен указывать на ваш rest-services-config.xml например /WEB-INF/spring/appServlet/rest-services-config.xml.

Как вы правильно отметили ваш отдых-услуги-config.xml должны содержать

<resources mapping="/resources/**" location="/resources/" /> 

Если изображение находится в вашем WAR файл/папку под resources/face.jpg то изображение должно быть показано при использовании этого

<img src="${pageContext.servletContext.contextPath}/resources/face.jpg"/> 

бирка.

HTH

+0

У меня он такой, но все еще не работает. Такая же ошибка, кстати, не должно быть ? Мне очень нужно исправить это. – benskiiii

+0

'mvc' - это пространство имен по умолчанию в моем файле. Возможно ли, что вы создаете минимальный self-содержащий пример с ошибкой? Вы можете сравнить свою конфигурацию с Web MVC Showcase здесь: https://github.com/SpringSource/spring-mvc-showcase – Sandro

+0

Хм, не уверен. Но я понял, что мой проект использует jsps или что-то еще, и для этого нужен контроллер для работы, сервлет. Поэтому мне нужно создать контроллер или что-то, чтобы заставить его работать? – benskiiii

0

Вы не привязали пружинный сервел к любому URL-адресу, поэтому для root нет методов обработчика: /. Вам нужно добавить что-то вроде этого:

<servlet-mapping> 
<servlet-name>default</servlet-name> 
<url-pattern>/</url-pattern> 
</servlet-mapping> 

на данный момент, ваш закомментирована отображение только ссылки .jpgs.

+0

Получение 404, когда я добавил, что в моем web.xml ...не могу даже загрузить сайт сейчас с большим количеством ошибок – benskiiii

+0

@benskiiii havce у вас есть два аппликации? вы пробовали просто раскомментировать свой существующий web.xml, который хорошо выглядит – NimChimpsky

+0

Что вы имеете в виду? Извините, я не про это haha ​​ – benskiiii

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