關於如何上傳到Blobstore的blobstore document。它顯示通過JSP + Servlet方法上傳。文件上傳到AppEngine Blobstore
由於我的應用程序基於GWT,我需要適應GWT RPC(而不是JSP)。
所以在我的應用程序RPC服務實現:
public class MyServiceImpl extends RemoteServiceServlet implements
MyService {
public String getUploadUrl() {
BlobstoreService blobstoreService = BlobstoreServiceFactory.getBlobstoreService();
return blobstoreService.createUploadUrl("/upload")
}
}
這是正確的做法或有任何其他方式做正確?雖然我沒有嘗試過這段代碼。
上傳的二進制文件最大範圍從字節到2MB。
關於如何上傳到Blobstore的blobstore document。它顯示通過JSP + Servlet方法上傳。
由於我的應用程序基於GWT,我需要適應GWT RPC(而不是JSP)。
所以在我的應用程序RPC服務實現:
public class MyServiceImpl extends RemoteServiceServlet implements
MyService {
public String getUploadUrl() {
BlobstoreService blobstoreService = BlobstoreServiceFactory.getBlobstoreService();
return blobstoreService.createUploadUrl("/upload")
}
}
這是正確的做法或有任何其他方式做正確?雖然我沒有嘗試過這段代碼。
上傳的二進制文件最大範圍從字節到2MB。
當我嘗試了這個代碼,這個是服務器端的控制檯日誌:
May 07, 2012 6:35:53 AM com.google.appengine.tools.development.LocalResourceFileServlet doGet
WARNING: No file found for: /crossdomain.xml
然後在客戶端GWT.log在RPC能夠生成一個URL但它不工作:
[INFO] [blobrpc] - Success fetch upload url: http://127.0.0.1:8888/_ah/upload/aglub19hcHBfaWRyGwsSFV9fQmxvYlVwbG9hZFNlc3Npb25fXxgDDA
我看到的,但如果使用FormElement形式= Document.get()createFormElement(); form.setAction(url_from_rpc);這有效嗎?或者應用程序會通過這種方法獲得一些Session問題? – xybrek
我設法用Blobstore FileService API編寫了一個工作代碼,但我需要編寫一些方法來處理流式文件上傳。謝謝你的提示。 – xybrek
'gwtupload'項目爲GAE提供了一些服務器端支持,包括流:http://code.google.com/p/gwtupload/source/browse/#svn%2Ftrunk%2FGwtUpload%2Fgae%2Fsrc%2Fmain%2Fjava%2Fgwtupload %2Fserver%2Fgae –