【问题标题】:Exception accessing Blobstore from REST webservice从 REST Web 服务访问 Blobstore 的异常
【发布时间】:2013-07-01 13:52:07
【问题描述】:

我正在尝试将图像上传到我在 Google App Engine 上的 REST 网络服务(使用 Jersey)。

这是我的方法:

@POST
@Path("/upload")
@Consumes(MediaType.MULTIPART_FORM_DATA)
public Response uploadImage(@Context HttpServletRequest request){
        BlobstoreService bs = BlobstoreServiceFactory.getBlobstoreService();
        bs.createUploadUrl("/upload");

        Map<String, List<BlobKey>> blobFields = bs.getUploads(request);
        List<BlobKey> blobKeys = blobFields.entrySet().iterator().next().getValue();
        if (blobKeys != null && !blobKeys.isEmpty()) {
            BlobKey blobKey = blobKeys.get(0);
            System.out.println("MY KEY: "+blobKey.getKeyString());
        }

        return null;
    }

但我得到了这个例外:

Uncaught exception from servlet
java.lang.IllegalStateException: Must be called from a blob upload callback request.

在这一行:

Map<String, List<BlobKey>> blobFields = bs.getUploads(request);

我哪里错了?

【问题讨论】:

    标签: google-app-engine jersey blobstore


    【解决方案1】:

    查看以下示例。

    https://developers.google.com/appengine/docs/java/blobstore/

    您需要将 createUploadUrl() 的结果设置为表单标签上的 action 属性。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-08-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-12
      • 2014-07-15
      • 1970-01-01
      相关资源
      最近更新 更多