Example usage for com.google.gwt.http.client RequestBuilder sendRequest

List of usage examples for com.google.gwt.http.client RequestBuilder sendRequest

Introduction

In this page you can find the example usage for com.google.gwt.http.client RequestBuilder sendRequest.

Prototype

public Request sendRequest(String requestData, RequestCallback callback) throws RequestException 

Source Link

Document

Sends an HTTP request based on the current builder configuration with the specified data and callback.

Usage

From source file:nl.fontys.fhict.jea.gwt.jee7.client.bus.impl.connection.poll.PollConnection.java

private void connect() throws ConnectionException {
    RequestBuilder requestBuilder = new RequestBuilder(RequestBuilder.GET, createURL());
    requestBuilder.setTimeoutMillis(0);/*from w  ww.  j av  a2s. com*/
    requestBuilder.setHeader("Accept", BusService.MIME_TYPE_GWT_RPC);
    try {
        requestBuilder.sendRequest("", this);
        alive = true;
    } catch (RequestException ex) {
        throw new ConnectionException(ex);
    }
}

From source file:nl.mpi.tg.eg.experiment.client.service.DataSubmissionService.java

License:Open Source License

private void submitData(final ServiceEndpoint endpoint, final UserId userId, final String jsonData,
        final DataSubmissionListener dataSubmissionListener) {
    final RequestBuilder builder = new RequestBuilder(RequestBuilder.POST,
            serviceLocations.dataSubmitUrl() + endpoint.name());
    builder.setHeader("Content-type", "application/json");
    RequestCallback requestCallback = new RequestCallback() {

        @Override/*from  w w  w.  ja  va2s  .c  o m*/
        public void onError(Request request, Throwable exception) {
            logger.warning(builder.getUrl());
            logger.log(Level.WARNING, "RequestCallback", exception);
            dataSubmissionListener.scoreSubmissionFailed(new DataSubmissionException(
                    DataSubmissionException.ErrorType.connectionerror, endpoint.name()));
        }

        @Override
        public void onResponseReceived(Request request, Response response) {
            final JsArray<DataSubmissionResult> sumbmissionResult = JsonUtils
                    .<JsArray<DataSubmissionResult>>safeEval("[" + response.getText() + "]");
            // here we also check that the JSON return value contains the correct user id, to test for cases where a web cashe or wifi login redirect returns stale data or a 200 code for a wifi login
            if (200 == response.getStatusCode() && sumbmissionResult.length() > 0
                    && sumbmissionResult.get(0).getSuccess()
                    && userId.toString().equals(sumbmissionResult.get(0).getUserId())) {
                final String text = response.getText();
                logger.info(text);
                //                    localStorage.stowSentData(userId, jsonData);
                dataSubmissionListener.scoreSubmissionComplete(sumbmissionResult);
            } else {
                logger.warning(builder.getUrl());
                logger.warning(response.getStatusText());
                if (sumbmissionResult.length() > 0) {
                    dataSubmissionListener.scoreSubmissionFailed(
                            new DataSubmissionException(DataSubmissionException.ErrorType.dataRejected,
                                    sumbmissionResult.get(0).getMessage()));
                } else {
                    dataSubmissionListener.scoreSubmissionFailed(new DataSubmissionException(
                            DataSubmissionException.ErrorType.non202response, endpoint.name()));
                }
            }
        }
    };
    try {
        // todo: add the application build number to the submitted data
        builder.sendRequest(jsonData, requestCallback);
    } catch (RequestException exception) {
        logger.log(Level.SEVERE, "submit data failed", exception);
        dataSubmissionListener.scoreSubmissionFailed(
                new DataSubmissionException(DataSubmissionException.ErrorType.buildererror, endpoint.name()));
    }
}

From source file:nl.mpi.tg.eg.experiment.client.service.synaesthesia.registration.RegistrationService.java

License:Open Source License

public void submitRegistration(final UserResults userResults, final String sendingRegex,
        final String receivingRegex, final String dataLogFormated, RegistrationListener registrationListener) {
    final String registratinoUrl = serviceLocations.registrationUrl();
    final RequestBuilder builder = new RequestBuilder(RequestBuilder.POST, registratinoUrl);
    builder.setHeader("Content-type", "application/x-www-form-urlencoded");
    StringBuilder stringBuilder = new StringBuilder();
    for (MetadataField key : userResults.getUserData().getMetadataFields()) {
        final String postName = key.getPostName();
        if (sendingRegex == null || postName.matches(sendingRegex)) {
            String value = URL.encodeQueryString(userResults.getUserData().getMetadataValue(key));
            if (stringBuilder.length() > 0) {
                stringBuilder.append("&");
            }/*from  w w  w.j a  va 2  s  . c  o  m*/
            stringBuilder.append(postName).append("=").append(value);
        }
    }
    if (stringBuilder.length() > 0) {
        stringBuilder.append("&");
    }
    stringBuilder.append("applicationversion").append("=").append(version.projectVersion()).append("&");
    String dataLogEncoded = URL.encodeQueryString(dataLogFormated);
    stringBuilder.append("datalog").append("=").append(dataLogEncoded).append("&");
    try {
        builder.sendRequest(stringBuilder.toString(),
                geRequestBuilder(userResults, builder, registrationListener, registratinoUrl, receivingRegex));
    } catch (RequestException exception) {
        registrationListener.registrationFailed(
                new RegistrationException(RegistrationException.ErrorType.buildererror, exception));
        logger.log(Level.SEVERE, "SubmitRegistration", exception);
    }
}

From source file:nl.mpi.tg.eg.experiment.client.service.synaesthesia.registration.RegistrationService.java

License:Open Source License

public void submitRegistration(UserResults userResults, RegistrationListener registrationListener,
        final String reportDateFormat, final MetadataField emailAddressMetadataField, final String scoreLog) {
    final String registratinoUrl = serviceLocations.registrationUrl();
    final RequestBuilder builder = new RequestBuilder(RequestBuilder.POST, registratinoUrl);
    builder.setHeader("Content-type", "application/x-www-form-urlencoded");
    StringBuilder stringBuilder = new StringBuilder();
    for (MetadataField key : userResults.getUserData().getMetadataFields()) {
        String value = URL.encodeQueryString(userResults.getUserData().getMetadataValue(key));
        if (stringBuilder.length() > 0) {
            stringBuilder.append("&");
        }/*from  w  w  w .ja va  2s .  co m*/
        stringBuilder.append(key.getPostName()).append("=").append(value);
    }
    if (stringBuilder.length() > 0) {
        stringBuilder.append("&");
    }
    stringBuilder.append("applicationversion").append("=").append(version.projectVersion()).append("&");
    String scoreLogEncoded = URL.encodeQueryString(scoreLog/*userResults.getScoreLog()*/);
    stringBuilder.append("scorelog").append("=").append(scoreLogEncoded).append("&");
    String restultsData = URL.encodeQueryString(new ResultsSerialiser() {
        final DateTimeFormat format = DateTimeFormat.getFormat(reportDateFormat);

        @Override
        protected String formatDate(Date date) {
            return format.format(date);
        }

        @Override
        protected String getSeparator() {
            return "\t";
        }

        @Override
        protected String getRowSeparator() {
            return "\n";
        }
    }.serialise(userResults, emailAddressMetadataField));
    stringBuilder.append("quiz_results=").append(restultsData);
    try {
        builder.sendRequest(stringBuilder.toString(),
                geRequestBuilder(userResults, builder, registrationListener, registratinoUrl, null));
    } catch (RequestException exception) {
        registrationListener.registrationFailed(
                new RegistrationException(RegistrationException.ErrorType.buildererror, exception));
        logger.log(Level.SEVERE, "SubmitRegistration", exception);
    }
}

From source file:nl.ru.languageininteraction.synaesthesia.client.registration.RegistrationService.java

License:Open Source License

public void submitRegistration(UserResults userResults, RegistrationListener registrationListener,
        final String reportDateFormat) {
    final String registratinoUrl = serviceLocations.registrationUrl();
    final RequestBuilder builder = new RequestBuilder(RequestBuilder.POST, registratinoUrl);
    builder.setHeader("Content-type", "application/x-www-form-urlencoded");
    StringBuilder stringBuilder = new StringBuilder();
    for (String key : userResults.getMetadataKeys()) {
        String value = URL.encodeQueryString(userResults.getMetadataValue(key));
        if (stringBuilder.length() > 0) {
            stringBuilder.append("&");
        }/*  w w w.  j a  v  a  2 s  .c om*/
        stringBuilder.append(key).append("=").append(value);
    }
    if (stringBuilder.length() > 0) {
        stringBuilder.append("&");
    }
    stringBuilder.append("applicationversion").append("=").append(version.projectVersion()).append("&");
    String scoreLog = URL.encodeQueryString(userResults.getScoreLog());
    stringBuilder.append("scorelog").append("=").append(scoreLog).append("&");
    String restultsData = URL.encodeQueryString(new ResultsSerialiser() {
        final DateTimeFormat format = DateTimeFormat.getFormat(reportDateFormat);

        @Override
        protected String formatDate(Date date) {
            return format.format(date);
        }
    }.serialise(userResults, mateadataFields.postName_email()));
    stringBuilder.append("quiz_results=").append(restultsData);
    try {
        builder.sendRequest(stringBuilder.toString(),
                geRequestBuilder(builder, registrationListener, registratinoUrl));
    } catch (RequestException exception) {
        registrationListener.registrationFailed(exception);
        logger.log(Level.SEVERE, "SubmitRegistration", exception);
    }
}

From source file:nl.strohalm.cyclos.mobile.client.utils.ConnectRequest.java

License:Open Source License

/**
 * Executes the requests and invokes {@link #onResponseFinished(String)}
 *///  w  ww  .  ja v  a 2s.  c  om
private void execute() {
    if (!requests.isEmpty()) {
        final ConnectAction action = requests.remove(0);
        RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, URL.encode(action.getServiceUrl()));
        builder.setTimeoutMillis(15 * 1000); // 15 secs
        try {
            builder.sendRequest(null, new RequestCallback() {
                public void onError(Request request, Throwable exception) {
                    // Couldn't connect to server (could be timeout, SOP violation, etc.)
                    // Execute next request if available
                    execute();
                }

                public void onResponseReceived(Request request, Response response) {
                    if (200 == response.getStatusCode()) {
                        if (action.isAttachment()) {
                            // Return the url in the attachment
                            onResponseFinished(response.getText());
                        } else if (ConnectionHelper.isJSON(response)) {
                            // Return the given valid url
                            onResponseFinished(action.getAppUrl());
                        } else {
                            // Not valid JSON, execute next request if available
                            execute();
                        }
                    } else {
                        // Server error, execute next request if available
                        execute();
                    }
                }
            });
        } catch (RequestException e) {
            // Couldn't connect to server, execute next request if available 
            execute();
        }
    } else {
        // End of all requests, no valid url has been found
        onResponseFinished(null);
    }
}

From source file:opus.gwt.management.console.client.AuthenticationPanel.java

License:Apache License

private void submitLogin() {
    StringBuffer formBuilder = new StringBuffer();
    formBuilder.append("csrfmiddlewaretoken=");
    formBuilder.append(URL.encodeQueryString(clientFactory.getJSVariableHandler().getCSRFTokenURL()));

    formBuilder.append("&username=");
    formBuilder.append(URL.encodeQueryString(usernameTextBox.getText()));
    formBuilder.append("&password=");
    formBuilder.append(URL.encodeQueryString(passwordTextBox.getText()));

    RequestBuilder builder = new RequestBuilder(RequestBuilder.POST, loginURL);
    builder.setHeader("Content-type", "application/x-www-form-urlencoded");

    try {/*from w w  w .j  a v a2  s  . c  o  m*/
        Request request = builder.sendRequest(formBuilder.toString(), new RequestCallback() {
            public void onError(Request request, Throwable exception) {
                Window.alert(exception.getMessage());
            }

            public void onResponseReceived(Request request, Response response) {
                if (response.getText().contains("Please try again.")) {
                    onLogin(false);
                } else {
                    onLogin(true);
                }
            }
        });
    } catch (RequestException e) {

    }

}

From source file:opus.gwt.management.console.client.dashboard.DashboardPanel.java

License:Apache License

@UiHandler("destroyButton")
void onDestroyButtonClick(ClickEvent event) {
    StringBuffer formBuilder = new StringBuffer();
    formBuilder.append("csrfmiddlewaretoken=");
    formBuilder.append(URL.encodeQueryString(JSVarHandler.getCSRFTokenURL()));

    RequestBuilder builder = new RequestBuilder(RequestBuilder.POST,
            "/deployments/" + projectName + "/destroy");
    builder.setHeader("Content-type", "application/x-www-form-urlencoded");

    try {//from   ww w. j a  v  a2 s  . c  om
        Request request = builder.sendRequest(formBuilder.toString(), new RequestCallback() {
            public void onError(Request request, Throwable exception) {
                ErrorPanel ep = new ErrorPanel(clientFactory);
                ep.errorHTML.setHTML("<p>Error Occured</p>");
                applicationsFlowPanel.add(ep);
            }

            public void onResponseReceived(Request request, Response response) {
                if (response.getText().contains("scheduled for destruction")) {
                    clientFactory.getProjects().remove(projectName);
                    eventBus.fireEvent(new DeleteProjectEvent(projectName));
                    deletePopupPanel.hide();
                } else {
                    ErrorPanel ep = new ErrorPanel(clientFactory);
                    ep.errorHTML.setHTML(response.getText());
                    applicationsFlowPanel.add(ep);
                }
            }
        });
    } catch (RequestException e) {

    }
}

From source file:opus.gwt.management.console.client.dashboard.DashboardPanel.java

License:Apache License

private void setProjectStatus(boolean active) {
    StringBuffer formBuilder = new StringBuffer();
    formBuilder.append("csrfmiddlewaretoken=");
    formBuilder.append(URL.encodeQueryString(JSVarHandler.getCSRFTokenURL()));
    formBuilder.append("&active=" + active);

    RequestBuilder builder = new RequestBuilder(RequestBuilder.POST, "/deployments/" + projectName + "/");
    builder.setHeader("Content-type", "application/x-www-form-urlencoded");

    try {/*from  www .j  a  va2 s .c  om*/
        Request request = builder.sendRequest(formBuilder.toString(), new RequestCallback() {
            public void onError(Request request, Throwable exception) {
                ErrorPanel ep = new ErrorPanel(clientFactory);
                ep.errorHTML.setHTML("<p>Error Occured</p>");
                applicationsFlowPanel.clear();
                applicationsFlowPanel.add(ep);
            }

            @Override
            public void onResponseReceived(Request request, Response response) {
                if (response.getText().contains("Project deactivated")) {
                    setActive(false);
                } else if (response.getText().contains("Project activated")) {
                    setActive(true);
                } else if (response.getText().contains("You asked me to activate the project")) {
                    eventBus.fireEvent(new PanelTransitionEvent(
                            PanelTransitionEvent.TransitionTypes.PROJECTSETTINGS, projectName));
                } else {
                    ErrorPanel ep = new ErrorPanel(clientFactory);
                    ep.errorHTML.setHTML(response.getText());
                    applicationsFlowPanel.clear();
                    applicationsFlowPanel.add(ep);
                }
            }
        });
    } catch (RequestException e) {
        e.printStackTrace();
    }
}

From source file:opus.gwt.management.console.client.deployer.ProjectDeployerController.java

License:Apache License

private void deployProject() {
    createdProjectName = deploymentOptionsPanel.getProjectName();

    ArrayList<String> paths = appBrowserPanel.getAppPaths();
    ArrayList<String> apptypes = appBrowserPanel.getAppTypes();
    ArrayList<String> appNames = appBrowserPanel.getAppNames();

    StringBuffer formBuilder = new StringBuffer();
    formBuilder.append("csrfmiddlewaretoken=");
    formBuilder.append(URL.encodeQueryString(jsVarHandler.getCSRFTokenURL()));

    formBuilder.append("&form-TOTAL_FORMS=");
    formBuilder.append(URL.encodeQueryString(String.valueOf(paths.size())));
    formBuilder.append("&form-INITIAL_FORMS=");
    formBuilder.append(URL.encodeQueryString(String.valueOf(0)));
    formBuilder.append("&form-MAX_NUM_FORMS=");

    for (int i = 0; i < paths.size(); i++) {
        formBuilder.append("&form-" + i + "-apptype=");
        formBuilder.append(apptypes.get(i));

        formBuilder.append("&form-" + i + "-apppath=");
        formBuilder.append(paths.get(i));

        formBuilder.append("&form-" + i + "-appname=");
        formBuilder.append(appNames.get(i));
    }//from  www. ja v a 2  s. c o m

    formBuilder.append(deploymentOptionsPanel.getPostData());
    formBuilder.append(projectOptionsPanel.getPostData());
    formBuilder.append(databaseOptionsPanel.getPostData());

    RequestBuilder builder = new RequestBuilder(RequestBuilder.POST,
            "/deployments/" + createdProjectName + "/");
    builder.setHeader("Content-type", "application/x-www-form-urlencoded");
    //builder.setHeader(header, value);

    try {
        Request request = builder.sendRequest(formBuilder.toString(), new RequestCallback() {
            public void onError(Request request, Throwable exception) {
                ErrorPanel ep = new ErrorPanel(clientFactory);
                ep.errorHTML.setHTML("<p>Error Occured</p>");
                deployerDeckPanel.add(ep);
                deployerDeckPanel.showWidget(deployerDeckPanel.getWidgetIndex(ep));
            }

            public void onResponseReceived(Request request, Response response) {
                if (response.getText().contains("Back to")) {
                    loadingPopup.hide();
                    eventBus.fireEvent(new AsyncRequestEvent("addProject", createdProjectName));
                } else {
                    loadingPopup.hide();
                    ErrorPanel ep = new ErrorPanel(clientFactory);
                    ep.errorHTML.setHTML(response.getText());
                    deployerDeckPanel.add(ep);
                    deployerDeckPanel.showWidget(deployerDeckPanel.getWidgetIndex(ep));
                }
            }
        });
    } catch (RequestException e) {

    }

    loadingPopup.setGlassEnabled(true);
    loadingPopup.setGlassStyleName(style.loadingGlass());
    loadingPopup.show();
    int left = (Window.getClientWidth() / 2) - 150;
    int top = (Window.getClientHeight() / 2) - 10;
    loadingPopup.setPopupPosition(left, top);
    loadingPopup.show();
}