Когда я сохраняю файлы с помощью GAE, я использую следующий подход:
1 На моей странице JSP создайте форму с вводом файла:
<form name="uploadFileForm" enctype="multipart/form-data" method="post">
<input type="file" name="fileData"/>
</form>
2 Написать сервлет / контроллер, который читает двоичные данные из запроса
3 Записать эти данные в DataStore (ограничено 1 МБ) или в BlobStore (один вызов API ограничен 1 МБ, но общий размер файла может быть до 2 ГБ). Для файлов размером> 1 МБ необходимо выполнить несколько вызовов API.