我正在使用 Java 1.6 和 GWT 2.4。
我非常清楚我们可以使用以下代码获取 Java 中的当前工作目录:
System.getProperty("user.dir");
但是 GWT 不允许我在客户端使用 System 类。
所以我的问题是:有没有办法在 GWT 中获取当前工作目录路径?
我正在使用 Java 1.6 和 GWT 2.4。
我非常清楚我们可以使用以下代码获取 Java 中的当前工作目录:
System.getProperty("user.dir");
但是 GWT 不允许我在客户端使用 System 类。
所以我的问题是:有没有办法在 GWT 中获取当前工作目录路径?
您可以编写一个新服务(在您的 中RemoteService/RemoteServiceImpl
),它基本上会使用System.getProperty("user.dir");
?
它是一种解决方法,因为 GWT(客户端)代码没有java.lang.System
类的 javascript 替换,或者我猜他们没有读取系统属性的权限(因为它们在浏览器上运行)
GWT 编译为 javascript 并在通过 http 与服务器通信的浏览器中执行,因此无法执行服务器端 java 代码,如System.getProperty("user.dir");
.
任何此类要求都应通过对服务器的异步调用来实现。
注意:向用户显示文件系统路径仍然没有意义,除非您正在使用 Web GUI 编写系统资源管理器(可能会引发一些与安全相关的查询!!!)
System.getProperty("user.dir") 在 GWT 2.6.1 中为我工作得很好,无论是在本地运行还是部署到 Google App Engine 时(它返回例如 /base/data/home/apps/s~rhezivt28/1.379778380561169345 )。
Current Directory in GWT.
你所有的java脚本都在客户端所以,没有问题current directory
。
System.getProperty("user.dir");
由于安全原因javascript
无法访问系统驱动器以避免syber攻击
http://en.wikipedia.org/wiki/JavaScript#Security
为了获取文件,您需要进行服务器调用。