GWTファイルウィジェットとフォームパネルを使用している場合、誰かがGoogleアプリケーションエンジンのblobstoreでアップロードを処理する方法を説明できますか?
2 に答える
gwtuploadを見てください。GAEBlobstoreでの使用方法の例があります。
Google Blobstoreは、http経由でBLOBをアップロードして提供するように特別に設計されています。Blobstoreサービス(を使用して取得BlobstoreServiceFactory.getBlobstoreService())は、htmlフォームで使用するためのhttppostアクションを生成します。ファイルを投稿することで、blobをblobstoreにアップロードします。このアクションを生成するときは、アップロードされたBLOBキーにアクセスできるハンドラー(サーブレット)へのパスを指定します。
Map<String, BlobKey> blobs = blobstoreService.getUploadedBlobs(req);
BlobKey blobKey = blobs.get("data");
「データ」はフォームのファイルフィールドであることに注意してください。あなたが持っているのはblob(あなたのファイル)への鍵だけです。ここから制御を取得します。後で使用するためにこのキーを保存したり、(キーを使用して)ページにブロブをすぐに提供したりできます。
BlobKey blobKey = new BlobKey(req.getParameter("blob-key"));
blobstoreService.serve(blobKey, res);
もちろん、詳細については、Googleのドキュメントを参照してください。
BLOBストアの優れた機能の1つは、Google Mapper(基本的なmap-reduce)サービス(進行中の作業)と統合されており、BLOBとしてアップロードされたファイルを1行ずつ処理できます:http://ikaisays.com/2010/08/