图片有时无法加载到我的网络应用程序中

时间:2014-06-06 16:45:45

标签: html jsp tomcat

在我的Java Web应用程序中,图像有时无法显示,而是显示“断开链接”的红色X符号。查看Chrome开发人员工具中的“网络”标签,我可以看到图像正在加载状态代码为200(确定)和正确的内容类型标题。如果重要的话,似乎没有内容长度标题。

当我从IDE本地运行应用程序时,我无法重现该问题;它似乎只发生在我在服务器上运行时。我的第一个想法是它可能与IE的兼容性视图有关,但无论兼容性视图是打开还是关闭,同样的事情都会发生,而且它也发生在Chrome中。我还尝试更改IE的一些安全设置,因为当我在本地运行时,应用程序位于本地Intranet区域,而当它在服务器上运行时,它位于可信站点中。这没有用。

我认为JSP中的img标签没有任何异常。我使用较旧的DOCTYPE,因为它阻止IE 8在页面周围放置边框,我需要支持IE 8.边框是不可取的,但如果更改DOCTYPE将解决问题,那将是值得的。我意识到较旧的DOCTYPE将IE置于怪癖模式,但将其更改为<!DOCTYPE html>似乎没有帮助。

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<html>
    <head> ... </head>
    <body>
        <div>
            <img class="loginButton" width="100" height="28" alt="Log In" title="Log In" src="images/login.png"/>
        </div>
        ...
    </body>
</html>

如果我重新加载页面,一些图像将重新出现,而其他图像将消失。我通常必须在所有图像出现之前重新加载页面4到5次。清除缓存和/或cookie似乎没有帮助。

页面上没有很多图像,通常只有6或7个,并且它们的大小不超过4kb。有些图片是GIF,有些则是PNG;两种类型都有同样的问题。我在本地和服务器上运行Java 1.6上的Tomcat 7。

另一条信息,虽然我不确定它是如何融入这个难题的:我查看了IE存储其缓存文件的文件夹,我注意到其中一个未显示的图像的文件有文件大小为0.我删除了文件,重新加载了页面,然后出现了图像。然后我重新加载页面几次,直到图像消失,并查看缓存目录。再一次,图像文件的大小为零。我不确定为什么会这样。

我环顾四周并看到了类似的问题,但到目前为止还没有解决方案。我试图提供我认为相关的所有信息,但如果还有其他重要信息,请告诉我。谢谢你的帮助。

0 个答案:

没有答案