所以为了不重复太多,请参考java google-enpoint api提供静态图像。
从引用的链接中可以看到,我可以通过url查看图像。但是,当我尝试使用与
类似的代码读取文件名时,public void listFilesForFolder(final File folder) {
for (final File fileEntry : folder.listFiles()) {
if (fileEntry.isDirectory()) {
listFilesForFolder(fileEntry);
} else {
System.out.println(fileEntry.getName());
}
}
}
final File folder = new File("/home/you/Desktop");
listFilesForFolder(folder);
得到一个安全异常
java.security.AccessControlException: access denied ("java.io.FilePermission" "/myImages" "read")
有谁知道修复方法吗?为什么通过浏览器调用显示了图像,而来自服务器本身的调用抛出了异常?我觉得很奇怪。
如果您将一个文件配置为"静态"资源,它将由一个单独的服务器池提供,该服务器池针对提供静态内容进行了优化。一个后果是,文件是不可用的,从您的应用程序打开。"资源"文件可供应用程序打开和读取。
这里有说明
打开资源时需要使用相对路径。您已经在上面展示了一个绝对路径。
如果服务器作为服务运行,请确保服务对您试图读取的文件夹和文件具有权限。