我使用Eclipse + Vaadin框架。
首先,我将图像保存到WEB-INF文件夹中。 然后我将此图像加载到FileResource变量中,创建Image变量,然后将Image变量添加到Layout中。
图片资源的网页网址如下:http://servername/sitename/APP/connector/0/16/source/qwerty1.png
如何获取该格式的网址以便在外部使用图片?
变量basepath返回本地路径:“.... / 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);
答案 0 :(得分:5)
如果您将文件放在...src/main/webapp/VAADIN/image.png
中,则该文件应该可以使用,例如localhost:8080/VAADIN/image.png
。