Refine search
Client client = Client.create(); WebResource webResource = client.resource(baseuri); if (response.getStatus() != 200) { throw new RuntimeException("Failed : HTTP error code : " + response.getStatus()); String output = response.getEntity(String.class); System.out.println("Output from Server .... "); System.out.println(output + "\n");
@Override public EurekaHttpResponse<Void> cancel(String appName, String id) { String urlPath = "apps/" + appName + '/' + id; ClientResponse response = null; try { Builder resourceBuilder = jerseyClient.resource(serviceUrl).path(urlPath).getRequestBuilder(); addExtraHeaders(resourceBuilder); response = resourceBuilder.delete(ClientResponse.class); return anEurekaHttpResponse(response.getStatus()).headers(headersOf(response)).build(); } finally { if (logger.isDebugEnabled()) { logger.debug("Jersey HTTP DELETE {}/{}; statusCode={}", serviceUrl, urlPath, response == null ? "N/A" : response.getStatus()); } if (response != null) { response.close(); } } }
Builder builder = client.resource(input.uri).type(input.contentType); if (cr.getStatus() != 204 && cr.hasEntity()) { response.body = extractBody(cr); response.statusCode = cr.getStatus(); response.reasonPhrase = cr.getStatusInfo().getReasonPhrase(); response.headers = cr.getHeaders(); logger.error(String.format("Got unexpected http response - uri: %s, vipAddress: %s, status code: %s", input.getUri(), input.getVipAddress(), cr.getStatus()), ex); if(cr.getStatus() > 199 && cr.getStatus() < 300) { if(cr.getStatus() != 204 && cr.hasEntity()) { response.body = extractBody(cr); response.statusCode = cr.getStatus(); response.reasonPhrase = cr.getStatusInfo().getReasonPhrase(); return response; }else { String reason = cr.getEntity(String.class); logger.error(reason, ex); throw new Exception(reason);
ClientConfig cc = new DefaultClientConfig(); cc.getProperties().put( ClientConfig.PROPERTY_FOLLOW_REDIRECTS, true); Client c = Client.create(cc); WebResource r = c.resource("https://my_url"); ClientResponse response = r.get(ClientResponse.class); EntityTag e = response.getEntityTag(); String entity = response.getEntity(String.class); System.out.println("The response status is " + response.getStatus()); System.out.println("The enttiy body is " + entity);
private void checkAuthorization(ClientResponse response) { if (response.getStatus() == 401) { throw new SalesForceUnauthorizedException("Unauthorized reponse from SalesForce, status code = " + response.getStatus() + ", reason = " + response.getStatusInfo().getReasonPhrase() + ", body= " + response.getEntity(String.class)); } }
private EurekaHttpResponse<InstanceInfo> getInstanceInternal(String urlPath) { ClientResponse response = null; try { Builder requestBuilder = jerseyClient.resource(serviceUrl).path(urlPath).getRequestBuilder(); addExtraHeaders(requestBuilder); response = requestBuilder.accept(MediaType.APPLICATION_JSON_TYPE).get(ClientResponse.class); InstanceInfo infoFromPeer = null; if (response.getStatus() == Status.OK.getStatusCode() && response.hasEntity()) { infoFromPeer = response.getEntity(InstanceInfo.class); } return anEurekaHttpResponse(response.getStatus(), InstanceInfo.class) .headers(headersOf(response)) .entity(infoFromPeer) .build(); } finally { if (logger.isDebugEnabled()) { logger.debug("Jersey HTTP GET {}/{}; statusCode={}", serviceUrl, urlPath, response == null ? "N/A" : response.getStatus()); } if (response != null) { response.close(); } } }
/** * Converts ClientResponse object to string with detailed debug information including status code, media type, * response headers, and response body if exists. */ private String clientResponseToString(ClientResponse response) { if (response == null) { return null; } StringBuilder builder = new StringBuilder(); builder.append("[status: ").append(response.getStatus()); builder.append(", media type: ").append(response.getType()); if (response.getStatus() != 404) { try { String responseBody = response.getEntity(String.class); if (responseBody != null) { builder.append(", response body: ").append(responseBody); } } catch (RuntimeException ignore) { // Ignore if there is no response body, or IO error - it may have already been read in certain scenario. } } builder.append(", response headers: ").append(response.getHeaders()); builder.append("]"); return builder.toString(); }
@Override public EurekaHttpResponse<Void> deleteStatusOverride(String appName, String id, InstanceInfo info) { String urlPath = "apps/" + appName + '/' + id + "/status"; ClientResponse response = null; try { Builder requestBuilder = jerseyClient.resource(serviceUrl) .path(urlPath) .queryParam("lastDirtyTimestamp", info.getLastDirtyTimestamp().toString()) .getRequestBuilder(); addExtraHeaders(requestBuilder); response = requestBuilder.delete(ClientResponse.class); return anEurekaHttpResponse(response.getStatus()).headers(headersOf(response)).build(); } finally { if (logger.isDebugEnabled()) { logger.debug("Jersey HTTP DELETE {}/{}; statusCode={}", serviceUrl, urlPath, response == null ? "N/A" : response.getStatus()); } if (response != null) { response.close(); } } }
@Override public EurekaHttpResponse<Application> getApplication(String appName) { String urlPath = "apps/" + appName; ClientResponse response = null; try { Builder requestBuilder = jerseyClient.resource(serviceUrl).path(urlPath).getRequestBuilder(); addExtraHeaders(requestBuilder); response = requestBuilder.accept(MediaType.APPLICATION_JSON_TYPE).get(ClientResponse.class); Application application = null; if (response.getStatus() == Status.OK.getStatusCode() && response.hasEntity()) { application = response.getEntity(Application.class); } return anEurekaHttpResponse(response.getStatus(), Application.class) .headers(headersOf(response)) .entity(application) .build(); } finally { if (logger.isDebugEnabled()) { logger.debug("Jersey HTTP GET {}/{}; statusCode={}", serviceUrl, urlPath, response == null ? "N/A" : response.getStatus()); } if (response != null) { response.close(); } } }
@Override public EurekaHttpResponse<Void> statusUpdate(String appName, String id, InstanceStatus newStatus, InstanceInfo info) { String urlPath = "apps/" + appName + '/' + id + "/status"; ClientResponse response = null; try { Builder requestBuilder = jerseyClient.resource(serviceUrl) .path(urlPath) .queryParam("value", newStatus.name()) .queryParam("lastDirtyTimestamp", info.getLastDirtyTimestamp().toString()) .getRequestBuilder(); addExtraHeaders(requestBuilder); response = requestBuilder.put(ClientResponse.class); return anEurekaHttpResponse(response.getStatus()).headers(headersOf(response)).build(); } finally { if (logger.isDebugEnabled()) { logger.debug("Jersey HTTP PUT {}/{}; statusCode={}", serviceUrl, urlPath, response == null ? "N/A" : response.getStatus()); } if (response != null) { response.close(); } } }
public <T> T getAsJson( Class<T> returnType ) { UriBuilder localUriBuilder = _uriBuilder.clone(); com.sun.jersey.api.client.WebResource resource = _client.resource( localUriBuilder.buildFromMap( _templateAndMatrixParameterValues ) ); com.sun.jersey.api.client.WebResource.Builder resourceBuilder = resource.getRequestBuilder(); resourceBuilder = resourceBuilder.accept( "application/json" ); com.sun.jersey.api.client.ClientResponse response; response = resourceBuilder.method( "GET", com.sun.jersey.api.client.ClientResponse.class ); if ( !com.sun.jersey.api.client.ClientResponse.class.isAssignableFrom( returnType ) ) { if ( response.getStatus() >= 400 ) { throw new PentahoDiPlugin.WebApplicationExceptionMessage( Response.status( response.getClientResponseStatus() ).build() ); } } if ( !com.sun.jersey.api.client.ClientResponse.class.isAssignableFrom( returnType ) ) { return response.getEntity( returnType ); } else { return returnType.cast( response ); } }
private void handleUniformInterfaceException(UniformInterfaceException exception, URI uri) { ClientResponse clientResponse = exception.getResponse(); if (clientResponse == null) { throw new ConductorClientException(String.format("Unable to invoke Conductor API with uri: %s", uri)); } try { if (clientResponse.getStatus() < 300) { return; } String errorMessage = clientResponse.getEntity(String.class); logger.error("Unable to invoke Conductor API with uri: {}, unexpected response from server: {}", uri, clientResponseToString(exception.getResponse()), exception); ErrorResponse errorResponse; try { errorResponse = objectMapper.readValue(errorMessage, ErrorResponse.class); } catch (IOException e) { throw new ConductorClientException(clientResponse.getStatus(), errorMessage); } throw new ConductorClientException(clientResponse.getStatus(), errorResponse); } catch (ConductorClientException e) { throw e; } catch (ClientHandlerException e) { handleClientHandlerException(e, uri); } catch (RuntimeException e) { handleRuntimeException(e, uri); } finally { clientResponse.close(); } }
private <T> T getForEntity(String url, Object[] queryParams, Function<ClientResponse, T> entityProvider, Object... uriVariables) { URI uri = null; ClientResponse clientResponse; try { uri = getURIBuilder(root + url, queryParams).build(uriVariables); clientResponse = client.resource(uri) .accept(MediaType.APPLICATION_JSON, MediaType.TEXT_PLAIN) .get(ClientResponse.class); if (clientResponse.getStatus() < 300) { return entityProvider.apply(clientResponse); } else { throw new UniformInterfaceException(clientResponse); } } catch (UniformInterfaceException e) { handleUniformInterfaceException(e, uri); } catch (RuntimeException e) { handleRuntimeException(e, uri); } return null; }
public <T> T getAsJson( Class<T> returnType ) { UriBuilder localUriBuilder = _uriBuilder.clone(); com.sun.jersey.api.client.WebResource resource = _client.resource( localUriBuilder.buildFromMap( _templateAndMatrixParameterValues ) ); com.sun.jersey.api.client.WebResource.Builder resourceBuilder = resource.getRequestBuilder(); resourceBuilder = resourceBuilder.accept( "application/json" ); com.sun.jersey.api.client.ClientResponse response; response = resourceBuilder.method( "GET", com.sun.jersey.api.client.ClientResponse.class ); if ( !com.sun.jersey.api.client.ClientResponse.class.isAssignableFrom( returnType ) ) { if ( response.getStatus() >= 400 ) { throw new PentahoDiPlugin.WebApplicationExceptionMessage( Response.status( response.getClientResponseStatus() ).build() ); } } if ( !com.sun.jersey.api.client.ClientResponse.class.isAssignableFrom( returnType ) ) { return response.getEntity( returnType ); } else { return returnType.cast( response ); } }
@Override public EurekaHttpResponse<ReplicationListResponse> submitBatchUpdates(ReplicationList replicationList) { ClientResponse response = null; try { response = jerseyApacheClient.resource(serviceUrl) .path(PeerEurekaNode.BATCH_URL_PATH) .accept(MediaType.APPLICATION_JSON_TYPE) .type(MediaType.APPLICATION_JSON_TYPE) .post(ClientResponse.class, replicationList); if (!isSuccess(response.getStatus())) { return anEurekaHttpResponse(response.getStatus(), ReplicationListResponse.class).build(); } ReplicationListResponse batchResponse = response.getEntity(ReplicationListResponse.class); return anEurekaHttpResponse(response.getStatus(), batchResponse).type(MediaType.APPLICATION_JSON_TYPE).build(); } finally { if (response != null) { response.close(); } } }
@Override public EurekaHttpResponse<Void> register(InstanceInfo info) { String urlPath = "apps/" + info.getAppName(); ClientResponse response = null; try { Builder resourceBuilder = jerseyClient.resource(serviceUrl).path(urlPath).getRequestBuilder(); addExtraHeaders(resourceBuilder); response = resourceBuilder .header("Accept-Encoding", "gzip") .type(MediaType.APPLICATION_JSON_TYPE) .accept(MediaType.APPLICATION_JSON) .post(ClientResponse.class, info); return anEurekaHttpResponse(response.getStatus()).headers(headersOf(response)).build(); } finally { if (logger.isDebugEnabled()) { logger.debug("Jersey HTTP POST {}/{} with instance {}; statusCode={}", serviceUrl, urlPath, info.getId(), response == null ? "N/A" : response.getStatus()); } if (response != null) { response.close(); } } }
public <T> T getAsXml( Class<T> returnType ) { UriBuilder localUriBuilder = _uriBuilder.clone(); com.sun.jersey.api.client.WebResource resource = _client.resource( localUriBuilder.buildFromMap( _templateAndMatrixParameterValues ) ); com.sun.jersey.api.client.WebResource.Builder resourceBuilder = resource.getRequestBuilder(); resourceBuilder = resourceBuilder.accept( "application/xml" ); com.sun.jersey.api.client.ClientResponse response; response = resourceBuilder.method( "GET", com.sun.jersey.api.client.ClientResponse.class ); if ( !com.sun.jersey.api.client.ClientResponse.class.isAssignableFrom( returnType ) ) { if ( response.getStatus() >= 400 ) { throw new PentahoDiPlugin.WebApplicationExceptionMessage( Response.status( response.getClientResponseStatus() ).build() ); } } if ( !com.sun.jersey.api.client.ClientResponse.class.isAssignableFrom( returnType ) ) { return response.getEntity( returnType ); } else { return returnType.cast( response ); } }
response = requestBuilder.accept(MediaType.APPLICATION_JSON_TYPE).put(ClientResponse.class); InstanceInfo infoFromPeer = null; if (response.getStatus() == Status.CONFLICT.getStatusCode() && response.hasEntity()) { infoFromPeer = response.getEntity(InstanceInfo.class); return anEurekaHttpResponse(response.getStatus(), infoFromPeer).type(MediaType.APPLICATION_JSON_TYPE).build(); } finally { if (logger.isDebugEnabled()) { logger.debug("[heartbeat] Jersey HTTP PUT {}; statusCode={}", urlPath, response == null ? "N/A" : response.getStatus());