2011-03-25 78 views
2

我在应用程序根文件夹中放置了一个favicon。但我无法显示它。如果我尝试浏览器指向它,我得到404我无法显示我的tomcat应用程序的图标

现在我已经这个映射为我的servlet:

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

和现在我不能只为图标改变一切.. ..你有没有那么创伤的修复?

回答

3

根据您向用户提供最喜欢图标的方式,您可以尝试如下所示。

创建一个新的Web应用程序,可以称之为IconDispatcher。此应用程序的web.xml可以是空白的。然后在你的主应用程序,所显示的页面将在头下面

<link rel="icon" type="image/ico" href="/IconDispatcher/favicon.ico"/> 

由于提供该页面时,Tomcat将使用最具体的路径可能的话,应该去的新图标的应用程序,让您的图标.ico文件,而不是在您的主应用程序中查找。

如果你不想创建一个新的webapp来提供图像,你可以创建一个新的调度器,它仅用于将请求的资源转发回给用户。该URL映射会更具体提出要求会去到正确的servlet

<servlet-mapping> 
    <servlet-name>iconDispatcher</servlet-name> 
    <url-pattern>/Icon</url-pattern> 
</servlet-mapping> 

另一种选择可能是把Web服务器在Tomcat中的前面。通过这样做,您可以从Web服务器提供所有静态内容,并仅将非静态内容转发到tomcat服务器进行处理。

希望这些想法有助于

+0

无论如何,我解决了将favicon放在我用于应用程序本身的img文件夹中,并使用链接rel ....唯一的疑难杂症是,当有异常或404我不' t得到favicon ...但嘿它是星期六... :) – gotch4 2011-03-26 12:24:50

+0

这对我来说是工作。谢谢 :) – 2016-02-24 10:26:21

1

您也可以将下面的代码添加到您的web.xml对你的春天项目提供默认的Tomcat功能。

<servlet-mapping> 
    <servlet-name>default</servlet-name> 
    <url-pattern>*.ico</url-pattern> 
</servlet-mapping> 
相关问题