【发布时间】:2012-03-24 20:55:46
【问题描述】:
我正在使用 GWT 中的一个 web 应用程序,它上传一个 >1 MB 的文件并输入 doc 和 pdf。 我正在使用 BlobStore。 实际上我必须将此文件存储在存储库中。此存储库的会话已经创建并且工作正常。
代码
// Get The URL
public void onClick(ClickEvent event) {
System.out.println("blob" +blobServices);
blobServices
.getBlobStoreUploadUrl(callback) ;
}
});
上面的 RPC 调用工作正常,我可以获取 URL。 现在我必须将此 URL 与用于上传文件的 servlet 一起使用。
AsyncCallback callback = new AsyncCallback() {
public void onFailure(Throwable caught) {
// TODO Auto-generated method stub
caught.printStackTrace();
}
public void onSuccess(Object result) {
String tmp = result.toString();
uploadForm.setAction(tmp);
// Submit the form to complete the upload
uploadForm.submit();
uploadForm.reset();
}
};
在服务器端
public class UploadServiceImpl extends HttpServlet {
BlobstoreService blobstoreService = BlobstoreServiceFactory.getBlobstoreService();
public void doPost(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
Map<String, BlobKey> blobs = blobstoreService.getUploadedBlobs(req);
BlobKey blobKey = blobs.get("upload");
}
}
我不知道这之后该怎么办。谁能告诉我理解这部分的代码或链接。 我想要文件的大小和文件的内容。 最重要的是文件类型是 .doc 和 .pdf 而不是图像。
【问题讨论】:
标签: java google-app-engine gwt servlets blobstore