【问题标题】:How to get URL of Vaadin resources path?如何获取 Vaadin 资源路径的 URL?
【发布时间】:2016-09-20 17:54:53
【问题描述】:

我使用 Eclipse + Vaadin 框架。

首先,我将图像保存到 WEB-INF 文件夹中。 然后我将此图像加载到 FileResource 变量中,创建 Image 变量,然后将 Image 变量添加到 Layout 中。

图像资源的页面 URL 如下所示:http://servername/sitename/APP/connector/0/16/source/qwerty1.png

如何获取该格式的 URL 以供外部使用图像?

变量基本路径返回本地路径:“..../WEB-INF/qwerty1.png”

String str = (String) VaadinService.getCurrent().getBaseDirectory().
                       getAbsolutePath() +"/WEB-INF/qwerty1.png";

File temp = new File(str);
FileOutputStream fos = new FileOutputStream(temp);
fos.write(os.toByteArray());
fos.flush();
fos.close();

String basepath = VaadinService.getCurrent().getBaseDirectory().
                   getAbsolutePath() +"/WEB-INF/qwerty1.png";
FileResource resource = new FileResource(new File(basepath));
Image image2 = new Image("Image from file", resource);
addComponent(image2);

【问题讨论】:

  • 您最好使用 ThemeResource 并将您的图像放入您的 Vaadin 主题文件夹 yourproject/src/main/webapp/VAADIN/themes/yourtheme。引用它new ThemeResource("qwerty1.png");
  • 我可以。但问题是我无法获得此图像的链接以供外部使用,例如用作其他站点中的图像。
  • 亚历杭德罗是对的。 webapp 文件夹用于存放您的静态资源。这也是您放置 HTML 或 JSP 文件的地方。不过,您不需要为此使用子文件夹 VAADIN。
  • 谢谢!!它的作品。

标签: java eclipse vaadin vaadin7


【解决方案1】:

如果您将文件放在...src/main/webapp/VAADIN/image.png 中,它应该可以使用例如localhost:8080/VAADIN/image.png

【讨论】:

    猜你喜欢
    • 2020-12-09
    • 1970-01-01
    • 2021-04-24
    • 1970-01-01
    • 2020-09-09
    • 2011-09-12
    • 2016-02-09
    • 2012-05-13
    • 1970-01-01
    相关资源
    最近更新 更多