К вашему сведению, вам может быть более полезно показать ваш код.
По сути, даже если вы загружаете файл по желанию, вам все равно необходимо отправить запрос из отправки формы через URL загрузки в интернет-магазин.Если файл был загружен, ваш обработчик загрузки, который получает контроль от GAE, сможет получить список (карту) всех BLOB-объектов.Если файл не был загружен, этот список будет пустым.Оттуда вы можете обработать оставшуюся часть отправки формы по своему выбору.
Подробнее о том, как получить этот список загруженных BLOB-объектов, см. этот раздел документации, но в основномВы собираетесь сделать этот вызов:
Map<String, BlobKey> blobs = blobstoreService.getUploadedBlobs(req);
Если эта карта пуста, загруженные капли отсутствуют.