List of usage examples for com.google.gwt.http.client RequestBuilder sendRequest
public Request sendRequest(String requestData, RequestCallback callback) throws RequestException
From source file:com.calclab.emite.core.client.services.gwt.GWTConnector.java
License:Open Source License
public static void send(final String httpBase, final String request, final ConnectorCallback listener, final int timeoutMillis) throws ConnectorException { final RequestBuilder builder = new RequestBuilder(RequestBuilder.POST, httpBase); builder.setHeader("Content-Type", "text/xml; charset=utf-8"); builder.setHeader("Cache-Control", "no-cache"); builder.setHeader("Pragma", "no-cache"); if (timeoutMillis > 0) { builder.setTimeoutMillis(timeoutMillis); }// w w w.j a v a 2 s . c o m // TODO : Hard coded timeout to 6s, but we should set it to the wait + a // delta // builder.setTimeoutMillis(6000); try { final Request req = builder.sendRequest(request, new RequestCallback() { @Override public void onError(final Request req, final Throwable throwable) { logger.severe("GWT CONNECTOR ERROR: " + throwable.getMessage()); activeRequests.remove(req); listener.onError(request, throwable); } @Override public void onResponseReceived(final Request req, final Response res) { activeRequests.remove(req); listener.onResponseReceived(res.getStatusCode(), res.getText(), request); } }); activeRequests.add(req); } catch (final RequestException e) { throw new ConnectorException(e.getMessage()); } catch (final Exception e) { logger.severe("Some GWT connector exception: " + e.getMessage()); throw new ConnectorException(e.getMessage()); } }
From source file:com.data2semantics.yasgui.client.helpers.AppcacheHelper.java
License:Open Source License
public void getAppcacheSize() { String url = GWT.getModuleBaseURL() + "manifest.appcache?count"; if (JsMethods.isDevPageLoaded()) url += "&type=dev"; RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, url); try {//w ww .j a v a 2 s . c om builder.sendRequest(null, new RequestCallback() { public void onError(Request request, Throwable e) { view.getLogger().severe("Unable to fetch appcache count (does browser support appcache??)"); } @Override public void onResponseReceived(Request request, Response response) { if (response.getStatusCode() == 200) { setAppcacheSize(response.getText()); } else { view.getLogger().severe("Unable to fetch appcache count (does browser support appcache??)"); } } }); } catch (RequestException e) { //couldnt connect to server view.getLogger().severe("Unable to fetch appcache count (does browser support appcache??)"); } }
From source file:com.data2semantics.yasgui.client.helpers.SparqlQuery.java
License:Open Source License
public void doRequest() { if (!view.getConnHelper().isOnline() && !JsMethods.corsEnabled(endpoint)) { //cors disabled and not online: problem! String errorMsg = "YASGUI is current not connected to the YASGUI server. " + "This mean you can only access endpoints on your own computer (e.g. localhost), which are <a href=\"http://enable-cors.org/\" target=\"_blank\">CORS enabled</a>.<br>" + "The endpoint you try to access is either not running on your computer, or not CORS-enabled.<br>" + corsNotification;//from w w w. j a v a2 s .co m view.getErrorHelper().onQueryError(errorMsg, endpoint, queryString, customQueryArgs); return; } view.getElements().onQueryStart(); RequestBuilder builder; HashMultimap<String, String> queryArgs = customQueryArgs; RequestBuilder.Method requestMethod = queryRequestMethod; queryArgs.put("query", queryString); if (JsMethods.corsEnabled(endpoint)) { String params = Helper.getParamsAsString(queryArgs); String url = endpoint; if (queryRequestMethod == RequestBuilder.GET) { url += "?" + params; } builder = new RequestBuilder(queryRequestMethod, url); if (queryRequestMethod == RequestBuilder.POST) { builder.setHeader("Content-Type", "application/x-www-form-urlencoded"); builder.setRequestData(params); } } else { requestMethod = RequestBuilder.POST; queryArgs.put("endpoint", endpoint); queryArgs.put("requestMethod", (queryRequestMethod == RequestBuilder.POST ? "POST" : "GET")); builder = new RequestBuilder(RequestBuilder.POST, GWT.getModuleBaseURL() + "sparql"); //send via proxy builder.setHeader("Content-Type", "application/x-www-form-urlencoded"); } builder.setHeader("Accept", acceptHeader); try { final long startTime = System.currentTimeMillis(); builder.sendRequest((requestMethod == RequestBuilder.POST ? Helper.getParamsAsString(queryArgs) : null), new RequestCallback() { public void onError(Request request, Throwable e) { //e.g. a timeout queryErrorHandler(e); } @Override public void onResponseReceived(Request request, Response response) { view.getElements().onQueryFinish(); if (!response.getStatusText().equals("Abort")) { //if user cancels query, textStatus will be 'abort'. No need to show error window then if (response.getStatusCode() >= 200 && response.getStatusCode() < 300) { if (view.getSettings().useGoogleAnalytics()) { long stopTime = System.currentTimeMillis(); GoogleAnalytics.trackEvent(new GoogleAnalyticsEvent(endpoint, JsMethods.getUncommentedSparql(queryString), Integer.toString((int) (stopTime - startTime)), (int) (stopTime - startTime))); } drawResults(response.getText(), response.getHeader("Content-Type")); } else { queryErrorHandler(response); } } } }); } catch (RequestException e) { queryErrorHandler(e); } }
From source file:com.dawg6.gwt.client.service.ServiceUtil.java
License:Open Source License
public void versionCheck(final Handler<VersionCheck> handler) { Scheduler.get().scheduleDeferred(new Command() { @Override//from www .j a va 2 s .c o m public void execute() { RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, GWT.getHostPageBaseURL() + versionServletUri); // GWT.log("Version URL = " + builder.getUrl()); final VersionCheck result = new VersionCheck(); try { builder.sendRequest(null, new RequestCallback() { @Override public void onResponseReceived(Request request, Response response) { String text = response.getText(); if (text != null) { if (text.startsWith(VersionBuilder.PREFIX)) { result.serverVersion = text.substring(VersionBuilder.PREFIX.length()); if (text.startsWith(CLIENT_VERSION.getPrefixString())) { result.success = true; } } } if ((!result.success) && (result.serverVersion == null)) { result.exception = "Unable to obtain Server version."; } if (handler != null) handler.handleResult(result); } @Override public void onError(Request request, Throwable exception) { result.success = false; result.exception = "Error communicating with server."; if (handler != null) handler.handleResult(result); } }); } catch (Exception e) { result.success = false; result.exception = "Error communicating with server."; if (handler != null) handler.handleResult(result); } } }); }
From source file:com.dawg6.web.dhcalc.client.Service.java
License:Open Source License
public void versionCheck(final Handler<VersionCheck> handler) { Scheduler.get().scheduleDeferred(new Command() { @Override/*from w w w. jav a2s . c o m*/ public void execute() { RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, GWT.getHostPageBaseURL() + "version?v2"); final VersionCheck result = new VersionCheck(); try { builder.sendRequest(null, new RequestCallback() { @Override public void onResponseReceived(Request request, Response response) { String text = response.getText(); if (text != null) { if (text.startsWith(Version.PREFIX)) { result.serverVersion = text.substring(Version.PREFIX.length()); if (text.startsWith(Version.getVersion().getPrefixString())) { result.success = true; } } } if ((!result.success) && (result.serverVersion == null)) { result.exception = "Unable to obtain Server version."; } if (handler != null) handler.handleResult(result); } @Override public void onError(Request request, Throwable exception) { result.success = false; result.exception = "Error communicating with server."; if (handler != null) handler.handleResult(result); } }); } catch (Exception e) { result.success = false; result.exception = "Error communicating with server."; if (handler != null) handler.handleResult(result); } } }); }
From source file:com.epam.feel.client.ui.util.gwtupload.FixedUploader.java
License:Apache License
public void update() { try {/*from ww w . j a v a2 s . co m*/ if (waitingForResponse) { return; } waitingForResponse = true; // Using a reusable builder makes IE fail because it caches the response // So it's better to change the request path sending an additional random parameter RequestBuilder reqBuilder = new RequestBuilder(RequestBuilder.GET, composeURL("filename=" + fileInput.getName(), "c=" + requestsCounter++)); reqBuilder.setTimeoutMillis(DEFAULT_AJAX_TIMEOUT); reqBuilder.sendRequest("get_status", onStatusReceivedCallback); } catch (RequestException e) { e.printStackTrace(); } }
From source file:com.epam.feel.client.ui.util.gwtupload.FixedUploader.java
License:Apache License
private void sendAjaxRequestToCancelCurrentUpload() throws RequestException { RequestBuilder reqBuilder = new RequestBuilder(RequestBuilder.GET, composeURL("cancel=true")); reqBuilder.sendRequest("cancel_upload", onCancelReceivedCallback); }
From source file:com.epam.feel.client.ui.util.gwtupload.FixedUploader.java
License:Apache License
private void sendAjaxRequestToDeleteUploadedFile() throws RequestException { RequestBuilder reqBuilder = new RequestBuilder(RequestBuilder.GET, composeURL("remove=" + getInputName())); reqBuilder.sendRequest("remove_file", onDeleteFileCallback); }
From source file:com.epam.feel.client.ui.util.gwtupload.FixedUploader.java
License:Apache License
/** * Sends a request to the server in order to get the blobstore path. When the response with the session comes, it * submits the form./*w w w . j a va 2 s . c o m*/ */ private void sendAjaxRequestToGetBlobstorePath() throws RequestException { RequestBuilder reqBuilder = new RequestBuilder(RequestBuilder.GET, getServletPath());// composeURL("blobstore=true")); reqBuilder.setTimeoutMillis(DEFAULT_AJAX_TIMEOUT); reqBuilder.sendRequest("blobstore", onBlobstoreReceivedCallback); }
From source file:com.epam.feel.client.ui.util.gwtupload.FixedUploader.java
License:Apache License
/** * Sends a request to the server in order to get the session cookie, when the response with the session comes, it * submits the form. This is needed because this client application usually is part of static files, and the server * doesn't set the session until dynamic pages are requested. If we submit the form without a session, the server * creates a new one and send a cookie in the response, but the response with the cookie comes to the client at the * end of the request, and in the meanwhile the client needs to know the session in order to ask the server for the * upload status.//ww w .j a va 2 s .c o m */ private void sendAjaxRequestToValidateSession() throws RequestException { // Using a reusable builder makes IE fail RequestBuilder reqBuilder = new RequestBuilder(RequestBuilder.GET, composeURL("new_session=true")); reqBuilder.setTimeoutMillis(DEFAULT_AJAX_TIMEOUT); reqBuilder.sendRequest("create_session", onSessionReceivedCallback); }