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

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

Introduction

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

Prototype

Method POST

To view the source code for com.google.gwt.http.client RequestBuilder POST.

Click Source Link

Document

Specifies that the HTTP POST method should be used.

Usage

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//w w w . ja v  a  2 s .com
        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 ww . ja  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   www .  j a v a  2  s . 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("&");
        }//from   ww  w . j  av a2  s. c  o m
        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.services.ContactServiceImpl.java

License:Open Source License

@Override
public void saveContact(Long memberId, AsyncCallback<Contact> callback) {
    RestRequest<Contact> request = new RestRequest<Contact>(RequestBuilder.POST,
            "contacts/byMemberId/" + memberId);
    request.sendAuthenticated(callback);
}

From source file:nl.strohalm.cyclos.mobile.client.services.PaymentServiceImpl.java

License:Open Source License

@Override
public void getPaymentPreview(boolean isSystem, Parameters params, AsyncCallback<PaymentPreview> callback) {
    RestRequest<PaymentPreview> request = new RestRequest<PaymentPreview>(RequestBuilder.POST,
            "payments/" + (isSystem ? "systemPayment" : "memberPayment"), params);
    request.sendAuthenticated(callback);
}

From source file:nl.strohalm.cyclos.mobile.client.services.PaymentServiceImpl.java

License:Open Source License

@Override
public void doPayment(boolean isSystem, Parameters params, AsyncCallback<PaymentConfirm> callback) {
    RestRequest<PaymentConfirm> request = new RestRequest<PaymentConfirm>(RequestBuilder.POST,
            "payments/" + (isSystem ? "confirmSystemPayment" : "confirmMemberPayment"), params);
    request.sendAuthenticated(callback);
}

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

License:Open Source License

/**
 * Sends a request using the given callback to notify the results. 
 * This method does not uses authentication, to perform authenticated 
 * requests see {@link #sendAuthenticated(AsyncCallback)}
 */// w  w w  .  ja  va 2 s.  c o  m
public Request send(AsyncCallback<T> callback) {

    // Start loading progress
    CyclosMobile.get().getMainLayout().startLoading();

    String url = "";

    // Append parameters as GET
    if (httpMethod == RequestBuilder.GET) {
        url = Configuration.get().getServiceUrl(this.path, parameters);
    } else {
        url = Configuration.get().getServiceUrl(this.path);
    }

    RequestBuilder request = new RequestBuilder(httpMethod, url);
    request.setTimeoutMillis(20 * 1000); // 20 seconds
    request.setHeader("Accept", "application/json");
    request.setHeader("Cache-Control", "no-cache, no-store, must-revalidate");

    if (httpMethod == RequestBuilder.POST) {
        request.setHeader("Content-Type", "application/json");

        // Send post body parameters
        if (parameters != null) {
            String json = parameters.toJSON();
            request.setRequestData(json);
        } else {
            // Send post without data
            request.setRequestData("");
        }
    }
    // Send a JSON post object
    if (postObject != null) {
        request.setHeader("Content-Type", "application/json");
        request.setRequestData(new JSONObject(postObject).toString());
    }
    if (username != null && !username.isEmpty()) {
        request.setHeader("Authorization", "Basic " + Base64.encode(username + ":" + password));
    }
    request.setCallback(new RequestCallbackAdapter(callback));
    try {
        // Send request
        return request.send();
    } catch (RequestException e) {
        callback.onFailure(e);

        // Stop loading progress
        CyclosMobile.get().getMainLayout().stopLoading();

        // Returns an emulated request, which does nothing
        return new Request() {
            @Override
            public void cancel() {
            }

            @Override
            public boolean isPending() {
                return false;
            }
        };
    }
}

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  va2s  .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 {// w  w  w  . j  a v a2s.  c  o m
        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) {

    }
}