1
我有一個gwt客戶端,現在我試圖將用戶的文件(圖像)傳輸到服務器並將其保存。你能解釋我如何使用FileUpload通過RestyGWT從GWT傳輸文件。我發現這是使用FormPanel nessesary,我認爲我必須使用setAction()和submit()方法,但我使用RestyGWT,並且我無法理解如何通過restyGWT傳輸數據?使用FileUpload通過RestyGWT傳輸文件從GWT客戶端
客戶端:
private FormPanel fileUploadPanel;
private FileUpload fileUpload;
private void create() {
//Some code //
fileUpload = new FileUpload();
fileUploadPanel = new FormPanel();
fileUploadPanel.setMethod(FormPanel.METHOD_POST);
fileUploadPanel.setEncoding(FormPanel.ENCODING_MULTIPART);
fileUpload.setName("upload");
fileUploadPanel.setAction("http://localhost:8080/api/events/upload");
fileUploadPanel.add(fileUpload);
//Some code//
}
@POST
@Path("UPLOAD_PATH")
void uploadImage(/*i don't know how what must be here */,
MethodCallback callback);
服務器端:
@Path("/upload")
@POST
@Consumes(MediaType.MULTIPART_FORM_DATA)
public void uploadImage(
@FormDataParam("upload") InputStream uploadedInputStream,
@FormDataParam("upload") FormDataContentDisposition fileDetail) {
String uploadedFileLocation = "some_path" + fileDetail.getFileName();
writeToFile(uploadedInputStream, uploadedFileLocation);
}