AccessControlException在JSP中创建文件

时间:2009-07-13 19:37:17

标签: google-app-engine jsp accesscontrolexception

我尝试在JSP中创建一个新文件并尝试保存它:

final File file1 = new File("piechart.png");
ChartUtilities.saveChartAsPNG(file1, targetChart, 600, 400, info);

我得到一个AccessControlException:

java.security.AccessControlException: access denied (java.io.FilePermission piechart.png write)
    at java.security.AccessControlContext.checkPermission(AccessControlContext.java:323)
    at java.security.AccessController.checkPermission(AccessController.java:546)
    at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
    at com.google.appengine.tools.development.DevAppServerFactory$CustomSecurityManager.checkPermission(DevAppServerFactory.java:122)
    at java.lang.SecurityManager.checkWrite(SecurityManager.java:962)
    at java.io.FileOutputStream.<init>(FileOutputStream.java:169)
    at java.io.FileOutputStream.<init>(FileOutputStream.java:131)
         at org.jfree.chart.ChartUtilities.saveChartAsPNG(ChartUtilities.java:328)

最终目标是在同一个JSP中创建和显示文件:

<IMG SRC="piechart.png" WIDTH="600" HEIGHT="400"   BORDER="0" USEMAP="#chart">

此外,这是在谷歌应用引擎环境中。

1 个答案:

答案 0 :(得分:1)

Google应用引擎doesn't support writing to disk.

来自常见问题:

  

由于应用程序的分布式特性,App Engine不支持写入本地文件。相反,必须保留的数据应存储在分布式数据存储中。有关更多信息,请参阅运行时沙箱上的文档。