1 /* 2 * CDDL HEADER START 3 * 4 * The contents of this file are subject to the terms of the 5 * Common Development and Distribution License (the "License"). 6 * You may not use this file except in compliance with the License. 7 * 8 * See LICENSE.txt included in this distribution for the specific 9 * language governing permissions and limitations under the License. 10 * 11 * When distributing Covered Code, include this CDDL HEADER in each 12 * file and include the License file at LICENSE.txt. 13 * If applicable, add the following below this CDDL HEADER, with the 14 * fields enclosed by brackets "[]" replaced with your own identifying 15 * information: Portions Copyright [yyyy] [name of copyright owner] 16 * 17 * CDDL HEADER END 18 */ 19 20 /* 21 * Copyright (c) 2018, Oracle and/or its affiliates. All rights reserved. 22 */ 23 package org.opengrok.web.api.error; 24 25 import jakarta.ws.rs.core.Response; 26 import jakarta.ws.rs.ext.ExceptionMapper; 27 import jakarta.ws.rs.ext.Provider; 28 import org.opengrok.indexer.logger.LoggerFactory; 29 30 import java.util.logging.Level; 31 import java.util.logging.Logger; 32 33 @Provider 34 public class GenericExceptionMapper implements ExceptionMapper<Exception> { 35 36 private static final Logger logger = LoggerFactory.getLogger(GenericExceptionMapper.class); 37 38 @Override toResponse(final Exception e)39 public Response toResponse(final Exception e) { 40 logger.log(Level.WARNING, "Exception while processing request", e); 41 42 return ExceptionMapperUtils.toResponse(Response.Status.INTERNAL_SERVER_ERROR, e); 43 } 44 45 } 46