Example usage for org.springframework.web.client RestClientException RestClientException

List of usage examples for org.springframework.web.client RestClientException RestClientException

Introduction

In this page you can find the example usage for org.springframework.web.client RestClientException RestClientException.

Prototype

public RestClientException(String msg, Throwable ex) 

Source Link

Document

Construct a new instance of RestClientException with the given message and exception.

Usage

From source file:org.opendaylight.defense4all.odl.controller.Connector.java

private HttpEntity<String> buildHttpEntityFromObject(Object object) throws RestClientException {

    String jsonStr;/*  www . j av  a2  s  .  com*/

    try {
        jsonStr = fasterxmlObjMapper.writeValueAsString(object);
    } catch (Throwable e) {
        String msg = "Failed to writeValueAsString " + object.toString() + " for controller " + odlOFC.hostname;
        log.error(msg, e);
        throw new RestClientException(msg, e);
    }

    log.debug("Caller: " + getMethodName(2) + " JSON: " + jsonStr);

    HttpHeaders headers = new HttpHeaders() {
        {
            String username = "admin";
            String password = "admin";
            String auth = username + ":" + password;
            byte[] encodedAuth = Base64.encodeBase64(auth.getBytes(Charset.forName("US-ASCII")));
            String authHeader = "Basic " + new String(encodedAuth);
            set("Authorization", authHeader);
        }
    };
    headers.setContentType(MediaType.APPLICATION_JSON);

    HttpEntity<String> entity = new HttpEntity<String>(jsonStr, headers);
    return entity;
}

From source file:org.opendaylight.defense4all.odl.controller.Connector.java

protected synchronized void putToController(String urlPrefix) throws RestClientException {

    try {/*from  w w w  .  j av a  2s  .co m*/
        String url = mkUrl(urlPrefix);
        log.debug("Caller: " + getMethodName(2) + " URL: " + url + " JSON: ");
        HttpHeaders headers = new HttpHeaders();
        headers.setContentType(MediaType.APPLICATION_JSON);
        restTemplate.put(url, null);
    } catch (Throwable e) {
        log.error("Failed to put to controller " + odlOFC.hostname, e);
        throw new RestClientException("Failed to put to controller " + odlOFC.hostname, e);
    }
}

From source file:org.opendaylight.defense4all.odl.controller.Connector.java

protected synchronized void delFromController(String urlPrefix) throws ExceptionInvalidState {

    try {//  w w w.j av  a2  s.c o m
        String url = mkUrl(urlPrefix);
        log.debug("Caller: " + getMethodName(2) + " URL: " + url);
        restTemplate.delete(url);
    } catch (Throwable e) {
        log.error("Failed to put to controller " + odlOFC.hostname, e);
        throw new RestClientException("Failed to put to controller " + odlOFC.hostname, e);
    }
}

From source file:org.springframework.security.kerberos.client.KerberosRestTemplate.java

@Override
protected final <T> T doExecute(final URI url, final HttpMethod method, final RequestCallback requestCallback,
        final ResponseExtractor<T> responseExtractor) throws RestClientException {

    try {//www. ja v a2s  .  co m
        LoginContext lc = buildLoginContext();
        lc.login();
        Subject serviceSubject = lc.getSubject();
        return Subject.doAs(serviceSubject, new PrivilegedAction<T>() {

            @Override
            public T run() {
                return KerberosRestTemplate.this.doExecuteSubject(url, method, requestCallback,
                        responseExtractor);
            }
        });

    } catch (Exception e) {
        throw new RestClientException("Error running rest call", e);
    }
}

From source file:org.springframework.web.client.HttpMessageConverterExtractor.java

@Override
@SuppressWarnings({ "unchecked", "rawtypes", "resource" })
public T extractData(ClientHttpResponse response) throws IOException {
    MessageBodyClientHttpResponseWrapper responseWrapper = new MessageBodyClientHttpResponseWrapper(response);
    if (!responseWrapper.hasMessageBody() || responseWrapper.hasEmptyMessageBody()) {
        return null;
    }//from  w  w  w .j a v a 2  s .  c o m
    MediaType contentType = getContentType(responseWrapper);

    try {
        for (HttpMessageConverter<?> messageConverter : this.messageConverters) {
            if (messageConverter instanceof GenericHttpMessageConverter) {
                GenericHttpMessageConverter<?> genericMessageConverter = (GenericHttpMessageConverter<?>) messageConverter;
                if (genericMessageConverter.canRead(this.responseType, null, contentType)) {
                    if (logger.isDebugEnabled()) {
                        logger.debug("Reading [" + this.responseType + "] as \"" + contentType + "\" using ["
                                + messageConverter + "]");
                    }
                    return (T) genericMessageConverter.read(this.responseType, null, responseWrapper);
                }
            }
            if (this.responseClass != null) {
                if (messageConverter.canRead(this.responseClass, contentType)) {
                    if (logger.isDebugEnabled()) {
                        logger.debug("Reading [" + this.responseClass.getName() + "] as \"" + contentType
                                + "\" using [" + messageConverter + "]");
                    }
                    return (T) messageConverter.read((Class) this.responseClass, responseWrapper);
                }
            }
        }
    } catch (IOException | HttpMessageNotReadableException ex) {
        throw new RestClientException("Error while extracting response for type [" + this.responseType
                + "] and content type [" + contentType + "]", ex);
    }

    throw new RestClientException("Could not extract response: no suitable HttpMessageConverter found "
            + "for response type [" + this.responseType + "] and content type [" + contentType + "]");
}