Sto utilizzando questo codice per invocare un servizio JAX-RS jersey utilizzando un client jersey.Maglia JAX-RS Client: lettura della risposta con codice di stato
public static void main(String[] args) {
ClientConfig config = new DefaultClientConfig();
Client client = Client.create(config);
WebResource service = client.resource(getBaseURI());
String msg = service.path("rest").path("ExceptionDemo").path("user").queryParam("id", "001").get(String.class);
System.out.println(msg);
}
private static URI getBaseURI() {
return UriBuilder.fromUri("http://localhost:8045/ExceptionHanlding").build();
}
Questo codice funziona bene quando il codice di stato di risposta è 200. Ma per qualcosa di diverso da 200, questo codice genera un'eccezione.
Come modificare questo codice in modo che in base al codice di stato della risposta esegua qualche azione?
Grazie per la risposta, ha risolto il mio problema. Posso vedere nel link che non stanno usando questo: 'EntityTag e = response.getEntityTag();'. A che cosa serve? – WhoAmI
In breve, un tag di entità identifica in modo univoco o quasi unico un corpo di risposta per consentire una memorizzazione nella cache migliore. Maggiori informazioni nella [specifica HTTP] (http://www.w3.org/Protocols/rfc2616/rfc2616-sec3.html#sec3.11) o su [Wikipedia] (http://en.wikipedia.org/wiki/HTTP_ETag). –