Skip to content

Instantly share code, notes, and snippets.

@NitriKx
Last active August 29, 2015 14:17
Show Gist options
  • Save NitriKx/901d782d24176b97893a to your computer and use it in GitHub Desktop.
Save NitriKx/901d782d24176b97893a to your computer and use it in GitHub Desktop.
Classe permettant de logger les exception survenues dans Jersey à travers SLF4J
package iaws.tblabsauzzya.ugmont;
import org.glassfish.grizzly.utils.Exceptions;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import javax.ws.rs.WebApplicationException;
import javax.ws.rs.core.Response;
import javax.ws.rs.ext.ExceptionMapper;
import javax.ws.rs.ext.Provider;
/**
* Created by Benoît Sauvère on 25/03/15.
*
* Cette classe permet de forcer le logging des exception survenues dans le serveur Grizzly.
*/
@Provider
public class GrizzlyServerExceptionLogger implements ExceptionMapper<Exception> {
private static final Logger _log = LoggerFactory.getLogger(GrizzlyServerExceptionLogger.class);
@Override
public Response toResponse(Exception ex) {
_log.error("Une erreur est survenue lors de l'exécution d'une requête", ex);
return Response.status(500).entity(Exceptions.getStackTraceAsString(ex)).type("text/plain")
.build();
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment