2014-10-13 3 views
-1

Я переношу свое приложение из tomcat в Google app engine (1.9.1) Я работаю JSF 2.2 на сервлете 2.5 и я столкнулся проблемы с чтением файлов из файловой системы, у меня есть код, который создает файл в файловой системе следующим образом:java.security.AccessControlException: доступ запрещен ("java.io.FilePermission" "C: tempFolder" "read") в GAE

File file = new File("C:\\tempFolder"); 
if(file.isDirectory()){ 
    // do writing stuff here 
} 

на кот я не получал какие-либо исключений на приведенный выше код, но на движке google я получаю следующее исключение:

Caused by: java.security.AccessControlException: access denied ("java.io.FilePermission" "C:\tempFolder" "read") 
    at java.security.AccessControlContext.checkPermission(AccessControlContext.java:372) 
    at java.security.AccessController.checkPermission(AccessController.java:559) 
    at java.lang.SecurityManager.checkPermission(SecurityManager.java:549) 
    at com.google.appengine.tools.development.DevAppServerFactory$CustomSecurityManager.checkPermission(DevAppServerFactory.java:429) 

, пожалуйста, сообщите, почему я получаю это исключение и как его исправить.

ответ

2

почему я получаю это исключение

среда GAE является песочницы по целому ряду причин. Это означает, что вы не можете делать много вещей, которые вы обычно можете делать на своей локальной машине.

Это также включает в себя доступ для записи в файловую систему.

, как это исправить

Найдите другой способ упорствовать данных (базы данных, например).

Вы можете прочитать немного больше о ограничениях песочницы here.

+0

Есть ли у вас какое-либо представление о распространенном способе загрузки файлов с помощью jsf на GAE? –

+0

эта проблема возникает, когда я пытаюсь загрузить файл на сервер –

+0

@MahmoudS Nope, не имел дело с загрузкой файлов в GAE. –

Смежные вопросы