JAX-RS 2 drucken JSON-Anfrage

Ich würde gerne in der Lage sein zu drucken, JAX-RS, 2-JSON-payload von request, unabhängig von der tatsächlichen Implementierung auf meinem Applikationsserver.

Ich habe versucht die vorgeschlagenen Lösungen SO, aber alle enthalten Binärdateien, die aus der tatsächlichen Umsetzung (wie Jersey und ähnliche), und ich darf nur zu verwenden, Java ee-api v 7.0 in meiner Anwendung.

Habe ich versucht, die Umsetzung ClientRequestFilter und ClientResponseFilter auf meinem Client aber nicht enthalten serialisierte Entitäten.

Hier ist ein Beispiel-client:

WebTarget target = ClientBuilder.newClient().register(MyLoggingFilter.class).target("http://localhost:8080/loggingtest/resources/accounts");
Account acc = target.request().accept(MediaType.APPLICATION_JSON).get(account.Account.class);

Und hier ist die Implementierung von MyLoggingFilter:

@Provider
public class MyLoggingFilter implements ClientRequestFilter, ClientResponseFilter {

    private static final Logger LOGGER = Logger.getLogger(MyLoggingFilter.class.getName());

    @Override
    public void filter(ClientRequestContext requestContext) throws IOException {

        LOGGER.log(Level.SEVERE, "Request method: {0}", requestContext.getMethod());

    }

    @Override
    public void filter(ClientRequestContext requestContext, ClientResponseContext responseContext) throws IOException {
        LOGGER.log(Level.SEVERE, "Response status: {0}", responseContext.getStatus());
    }        
}
InformationsquelleAutor D00de | 2016-04-17
Schreibe einen Kommentar