Java 我如何找到战争的根源?

Java 我如何找到战争的根源?,java,jsp,jsp-tags,war,Java,Jsp,Jsp Tags,War,我需要确定JSP标记中是否存在图像,以便在不存在图像时显示默认值。访问War根目录以便检查图像是否存在的最佳方法是什么?或者有更好的解决方案吗?可以将ServletContext方法用于此类功能。如果资源(图像)不存在,此方法返回null。在这种情况下,可以显示默认图像 请注意,此方法返回的URL不是用作标记中的“src”属性的URL。它很可能是一个文件:或jar:协议URL,在另一台主机上没有意义。在这个应用程序中,它只测试它是否为空,而不是由JSP实际测试。还要注意,不能保证web容器已经分

我需要确定JSP标记中是否存在图像,以便在不存在图像时显示默认值。访问War根目录以便检查图像是否存在的最佳方法是什么?或者有更好的解决方案吗?

可以将
ServletContext
方法用于此类功能。如果资源(图像)不存在,此方法返回
null
。在这种情况下,可以显示默认图像


请注意,此方法返回的URL不是用作
标记中的“src”属性的URL。它很可能是一个
文件:
jar:
协议URL,在另一台主机上没有意义。在这个应用程序中,它只测试它是否为空,而不是由JSP实际测试。

还要注意,不能保证web容器已经分解了WAR文件,因此您应该避免偷看文件系统


在部署时生成可用映像列表是一种选择吗?

最终目标是查看映像是否存在,否则显示默认映像,这样就可以工作。唯一的问题是我们被迫使用的web框架隐藏了对ServletContext的任何访问。真的吗?什么框架?明智的框架仍然通过将应用程序、会话和请求范围封装在某种抽象中来提供对它们的访问。如果你的框架真的那么有限,你可以做很多事情。注意“强迫”这个词。明智的框架不会强制开发人员使用。开发人员选择它们是因为它们是明智的。