使用新的浏览器窗口访问vaadin中的内部资源

时间:2011-09-17 09:30:12

标签: vaadin

我正在使用vaadin,我想在用户点击按钮时生成报告,我的报告在应用程序内,我想在新的浏览器窗口中打开报告。当我尝试这样做时,它打开窗口但显示我当前所在的窗口。我使用“open()”方法打开新窗口,而对于报告路径,我使用“ExternalResource”。这是我的代码

    mainWindow.getWindow().open(
                    new ExternalResource("http://localhost:8080/myapp/reports/report.rptdesigng"),
                    "_blank", // window name
                    500, // width
                    200, // weight
                    Window.BORDER_NONE // decorations
                    );

1 个答案:

答案 0 :(得分:4)

Vaadin有不同类型的资源。看看chapter about available Resource types in the Book of Vaadin

如果您使用ExternalResource,它只会将窗口转发到该URL。除非您在窗口中注册了URIHandler,否则它只显示主窗口。

所以基本上你有两个选择:

  1. 将URIHandler注册到窗口返回报告数据
  2. 使用其他类型的资源来提供报告数据
  3. 当然也有可能打开另一个Vaadin管理窗口(即由Vaadin组件组成)。您可以找到有关Windows in the Sampler的信息和代码示例。