favicon.ico не отображается весной mvc 3.2.2 для Tomcat 7.0?

Я новичок в Spring MVC, и мой favicon.ico не отображается на вкладке браузера с использованием Spring 3.2.2 с использованием tomcat 7.0. Я пытался просмотреть соответствующий поиск в Google, но все еще не могу отобразить его на вкладке браузера (FF, Chrome, IE... все последние версии не работают), а также очистить кеш и перезапустить браузер.

  • favicon.ico

Находится в корне папки webapp (src/main/webapp)

  • index.jsp
<!DOCTYPE html>  
      <html> 
         <head>         
            <link href="favicon.ico" rel="shortcut icon" >
  o o o
  • MVC-диспетчер-сервер.xml
<context:component-scan base-package="com.website.controllers" />

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
  <property name="prefix">
      <value>/WEB-INF/views/</value>
  </property>
  <property name="suffix">
      <value>.jsp</value>
  </property>
</bean>
  • веб.xml
<welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<servlet>
    <servlet-name>mvc-dispatcher</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>mvc-dispatcher</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB-INF/mvc-dispatcher-servlet.xml</param-value>
</context-param>

person genxgeek    schedule 18.06.2013    source источник


Ответы (1)


Убедитесь, что значок обслуживается, т. е. сделайте запрос на /favicon.ico и посмотрите, отображается ли он.

Если это так, добавьте это в свой web.xml, чтобы убедиться, что Tomcat отправляет правильный Content-Type с ответом:

<mime-mapping>
    <extension>ico</extension>
    <mime-type>image/x-icon</mime-type>
</mime-mapping>

Убедитесь, что <mvc:default-servlet-handler /> присутствует, если вы сопоставляете сервлет диспетчера с /.

person Jukka    schedule 18.06.2013
comment
Спасибо за ответ. когда я запрашиваю localhost:8080/mysite/favicon.ico, я получаю 404 (даже если я поместил mime-mapping в web.xml)......Состояние HTTP 404 - тип Описание сообщения отчета о состоянии Запрошенный ресурс () недоступен. Апач Томкэт/7.0.12 - person genxgeek; 19.06.2013
comment
Вы настроили ‹mvc:default-servlet-handler /›? См. static.springsource.org/spring/docs/3.2.x/ - person Jukka; 19.06.2013
comment
У меня это отображено в моем web.xml (используя spring 3.2.2Release)... поэтому я предполагаю, что он достигает того же. ‹servlet-mapping› ‹servlet-name›mvc-dispatcher‹/servlet-name› ‹url-pattern›/‹/url-pattern› ‹/servlet-mapping› - person genxgeek; 19.06.2013
comment
Поместите ‹mvc:default-servlet-handler /› в конфигурацию весеннего mvc, иначе ресурсы, обычно обслуживаемые Tomcat, не будут работать. - person Jukka; 19.06.2013
comment
УСПЕХ! Спасибо Юкка! знак равно - person genxgeek; 20.06.2013
comment
В. Нужно ли мне что-то особенное сделать, чтобы перейти с href=favicon.ico на href=/images/favicon.ico? - person genxgeek; 20.06.2013
comment
Ну, если изображения — это каталог в src/main/webapp, то единственное, что вам нужно изменить, это сделать его href=/mysite/images/favicon.ico, предполагая, что ваше приложение находится в /mysite. - person Jukka; 20.06.2013