List of usage examples for com.google.gwt.gears.client.httprequest HttpRequest getResponseText
public native String getResponseText();
From source file:com.google.gwt.gears.sample.uploaddemo.client.UploadDemo.java
License:Apache License
/** * This is the entry point method.//from w w w. j ava 2 s. c o m */ public void onModuleLoad() { root = RootPanel.get(); final Button browse = new Button("Browse"); final Button upload = new Button("Upload"); upload.setEnabled(false); final TextBox selected = new TextBox(); selected.setEnabled(false); final SimplePanel progressInner = new SimplePanel(); progressInner.addStyleName("progressInner"); final SimplePanel progressGauge = new SimplePanel(); progressGauge.addStyleName("progressGauge"); progressGauge.add(progressInner); final HTML result = new HTML(); browse.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { Desktop desktop = factory.createDesktop(); desktop.openFiles(new OpenFilesHandler() { public void onOpenFiles(OpenFilesEvent event) { File[] files = event.getFiles(); selected.setText(files[0].getName()); selectedFile = files[0].getBlob(); upload.setEnabled(true); } }, true); } }); upload.addClickHandler(new ClickHandler() { public void onClick(ClickEvent event) { HttpRequest request = factory.createHttpRequest(); request.open("POST", GWT.getModuleBaseURL() + "upload"); request.setRequestHeader("X-Filename", selected.getText()); request.setCallback(new RequestCallback() { public void onResponseReceived(HttpRequest request) { String msg = request.getStatus() + " " + request.getResponseText(); if (request.getStatus() != 200) { result.setHTML("<p style=\"color:red\">" + msg + "</p>"); } else { result.setHTML("<p style=\"color:green\">" + msg + "</p>"); } } }); request.getUpload().setProgressHandler(new ProgressHandler() { public void onProgress(ProgressEvent event) { double pcnt = ((double) event.getLoaded() / event.getTotal()); progressInner.setWidth((int) Math.floor(pcnt * 100) + "%"); } }); request.send(selectedFile); } }); HorizontalPanel inputPanel = new HorizontalPanel(); inputPanel.add(selected); inputPanel.add(browse); inputPanel.add(upload); root.add(inputPanel); root.add(new HTML("Progress:")); root.add(progressGauge); root.add(result); }