我是 vaadin 的新手,我设法以某种方式启动并运行了一个应用程序。现在我有一个 help.htm html 文件,其中包含有关如何使用该应用程序的提示。我已将 help.htm 放在我的项目 WEB 目录中,以便能够在 vaadin 上下文中访问它。我试过以这种方式访问它:
String str = "file:/" + "/" + application.getContext().getBaseDirectory() + "/help.htm";
URL url = new URL(str);
Embedded browser = new Embedded("Help", new ExternalResource(url));
browser.setType(Embedded.TYPE_BROWSER);
tabsheet.addComponent(browser);
我已经尝试在我的网络浏览器中调试、复制和传递 str 变量的内容,我可以访问该文件,并且浏览器可以正确显示它。我也尝试过使用 FileResource & ClassResource。另外,当我用 http://www.somewebpage.com/ 替换字符串时它有效,但不适用于上述代码。如何实现?
最佳答案
在Vaadin中有5种不同的资源可以根据情况选择:ExternalResource、ThemeResource、FileResource、ClassResource和StreamResource。 如果您希望该文件与您的应用程序捆绑在一起,您可以:
使用外部资源(将您的资源称为http://host:port/etc/etc),或
使用 ThemeResource(通过 WebContent/VAADIN/themes/yourtheme 目录的相对路径引用您的资源,您通常在其中放置图标和样式)
我会选择第二种方法,因为它使您无需查找上下文 url。
关于html - 嵌入在 vaadin 中的本地 htm 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8419496/