1

我正在使用 Java 1.6 和 GWT 2.4。

我非常清楚我们可以使用以下代码获取 Java 中的当前工作目录:

System.getProperty("user.dir");

但是 GWT 不允许我在客户端使用 System 类。

所以我的问题是:有没有办法在 GWT 中获取当前工作目录路径?

4

4 回答 4

0

您可以编写一个新服务(在您的 中RemoteService/RemoteServiceImpl),它基本上会使用System.getProperty("user.dir");?

它是一种解决方法,因为 GWT(客户端)代码没有java.lang.System类的 javascript 替换,或者我猜他们没有读取系统属性的权限(因为它们在浏览器上运行)

于 2013-04-15T07:54:30.280 回答
0
  1. 您需要使用RPC调用或RequestBuilder调用。
  2. 将图像名称参数传递给服务器
  3. 在服务器端的服务类中计算系统路径并返回路径信息。

GWT 编译为 javascript 并在通过 http 与服务器通信的浏览器中执行,因此无法执行服务器端 java 代码,如System.getProperty("user.dir");.

任何此类要求都应通过对服务器的异步调用来实现。

注意:向用户显示文件系统路径仍然没有意义,除非您正在使用 Web GUI 编写系统资源管理器(可能会引发一些与安全相关的查询!!!)

于 2013-04-15T08:33:08.317 回答
0

System.getProperty("user.dir") 在 GWT 2.6.1 中为我工作得很好,无论是在本地运行还是部署到 Google App Engine 时(它返回例如 /base/data/home/apps/s~rhezivt28/1.379778380561169345 )。

于 2014-10-31T21:11:19.153 回答
0
Current Directory in GWT.

你所有的java脚本都在客户端所以,没有问题current directory

System.getProperty("user.dir");

由于安全原因javascript无法访问系统驱动器以避免syber攻击

http://en.wikipedia.org/wiki/JavaScript#Security

请参阅在 javascript 中打开本地文件系统中的文件

为了获取文件,您需要进行服务器调用。

于 2013-04-15T09:16:10.873 回答