【问题标题】:Java EE read resources from dispatched html [duplicate]Java EE从分派的html中读取资源[重复]
【发布时间】:2017-02-16 21:38:12
【问题描述】:

我正在构建一个 servlet,它使用 RequestDispatcher 加载用于登录的 html 页面。

html 在 /WEB-INF/templates/main.html

我正在尝试为 /WEB-INF/resources/image.jpg 上的那个 html 文件加载图像

我尝试过使用<img src="/WEB-INF/resources/image.jpg,并且在 WEB-INF 之前也没有使用斜线。

我也试过<img src="../resources/image.jpg

似乎没有任何效果,我该怎么做?

【问题讨论】:

  • 使用类加载器,因为你使用的代码不起作用,你不能用它做任何事情。
  • 你能举个例子说明你的意思吗?
  • google 举个例子,我就不举例了。请澄清您的具体问题或添加其他详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。请参阅“如何提问”页面以获得澄清此问题的帮助。

标签: jsp servlets resources web-inf


【解决方案1】:

你不能这样做。

问题在于图像是由浏览器而不是应用程序加载的。并且应用程序内部之外的任何内容都无法访问WEB-INF 目录中的任何内容。

因此,您只需将图像移动到其他位置即可。

【讨论】:

  • 从外部无法访问确切的WEB-INF
【解决方案2】:

不要将暴露在外部世界(你的服务器之外)的资源放在 WEB-INF 文件夹下。对于静态资源,例如图像、Javascript 文件等...使用 WEB-INF 之外的目录。

【讨论】:

    【解决方案3】:

    WEB_INF 不是公共网络空间,因此WEB_INF 下的 ant 文件无法被外部网络应用程序(如任何浏览器或调用该 URL 的任何其他应用程序)访问。但是,可以从应用服务器中的文件(内部文件)中读取它。

    <img src=""> 标签中的图像由浏览器而不是您的应用程序加载,因此除了将所有图像、css 和 js 文件移到WEB-INF之外,您别无选择。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-12
      • 2020-05-08
      • 1970-01-01
      • 2018-06-04
      • 2011-11-06
      • 1970-01-01
      相关资源
      最近更新 更多