我无法回想起我的代码有什么变化,但每当我点击网络上的任何链接时,它都会给我这个:
WARN : org.springframework.web.servlet.PageNotFound - No mapping found for HTTP request with URI [/favicon.ico] in DispatcherServlet with name 'mvc-dispatcher'
我的web.xml的一部分
<servlet-mapping>
<servlet-name>mvc-dispatcher</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter>
<filter-name>HttpMethodFilter</filter-name>
<filter-class>org.springframework.web.filter.HiddenHttpMethodFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>HttpMethodFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
我的mvc-dispatcher-servlet.xml的一些配置
<!-- Handles HTTP GET requests for /resources/** by efficiently serving
up static resources in the ${webappRoot}/resources directory -->
<mvc:resources mapping="/resources/**" location="resources/" />
<!-- Resolves views selected for rendering by @Controllers to .jsp resources
in the /WEB-INF/views directory -->
<beans:bean
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<beans:property name="prefix" value="/WEB-INF/views/" />
<beans:property name="suffix" value=".jsp" />
<beans:property name="order" value="1" />
</beans:bean>
<!-- testing for pdf export -->
<beans:bean class="org.springframework.web.servlet.view.XmlViewResolver">
<beans:property name="location" value="/WEB-INF/spring-pdf-views.xml" />
<beans:property name="order" value="0" />
</beans:bean>
除此之外一切正常,意味着任何页面都正确加载而没有任何错误。我可以知道是什么原因造成的吗?谁正在使用.ico图片?
答案 0 :(得分:19)
大多数网络浏览器都会尝试在上下文的根目录中获取网站的favicon,并自动请求/favicon.ico
资源 。在您的情况下,任何配置的Spring映射都不会处理。
如果您在/favicon.ico
或其他位置有一个favicon,您可以在Spring中配置映射以解析对有效资源的请求:
<mvc:resources mapping="/favicon.ico" location="/favicon.ico" />
答案 1 :(得分:0)
浏览器标签中的favicon.ico
:图标
由于Spring Security正在使用
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
您是否将favicon.ico
排除在Spring Security的过滤之外?
<http pattern="/favicon.ico" security="none" />
答案 2 :(得分:0)
尝试在html页面中找到favicon.ico,如下所示:
<html>
<head>
<link href="[YOUR_FAVICON_PATH]/favicon.ico" rel="icon" type="image/x-icon" />
</head>
</html>