GWT的类类似于AWT桌面?



以下是我需要做的一小部分:

if (Desktop.isDesktopSupported())
{
    final Desktop desktop = Desktop.getDesktop();
    try{
    desktop.open(new File(path));
    }
    catch (final IOException e)
    {
     MessageBox.alert("Log View", "Error finding file", null);
    }
}

我需要在登录用户的默认桌面应用程序中打开该文件类型的文件。Maven在构建时给我带来了问题,说它找不到java.io.File和java.awt.Desktop。

一个由两部分组成的问题,首先,GWT是否具有与java.awt.Desktop类似的功能,以及如何修复项目以便maven找到io和awt文件?

为了获得与在 HTML 中调用Desktop JButton相同的效果,您需要提供一个 HTML 按钮,该按钮链接到文件的下载,并确保它具有服务器提供的正确内容类型。

特别是问题的 GWT 部分。

是的,你可以这样做。 您可能会使用Grid,FlexTable,HTMLTable或事件HTML来显示。 您可以将该微件嵌入到面板中,并在根面板上显示该面板。

诀窍是将文件数据从服务器获取到客户端。您可以使用GWT RPC或某种REST服务器来执行此操作。 如果您查看启动 GWT 应用程序时生成的默认应用程序,它将基于字符串发回字符串数据。 您可以将其用作模式来降低模型对象。 默认应用程序使用 GWT-RPC,并且非常容易遵循。

我对小部件类型含糊不清的原因是,这取决于您希望如何向用户呈现这些数据。 您可以使用HTML来渲染HTML,但我认为您希望使用更好的小部件来真正呈现此数据。

不,你不能用GWT做到这一点。

浏览器通常无法访问文件系统。 你能做的最好的事情就是让用户安装一些插件,让你访问文件(需要权限检查)或让他们将文件上传到你的服务器(你的网络应用程序可以从那里下载文件来检查它)。

最新更新