Я работаю в JAX-RS, и я сделал два пользовательских ExceptionMapper для кодов ошибок JSOn, в случае ошибки:
package Exception;
import Facade.ErrorMessage;
import javax.ws.rs.core.Response;
import javax.ws.rs.core.Response.Status;
import javax.ws.rs.ext.ExceptionMapper;
import javax.ws.rs.ext.Provider;
@Provider
//dette fungere ligesom et hierki, så først, kommer de laveste i hierkiet, og denne bliver kaldt, hvis der ikke er andre exceptions, der er fundet inden
public class GenericExceptionMapper implements ExceptionMapper<Throwable> {
@Override
public Response toResponse(Throwable exception) {
ErrorMessage errorMessage = new ErrorMessage(exception.getMessage(),
500,
"This message has been displayed, because the data was inavalid, please use another parameter as data");
return Response.status(Status.NOT_FOUND).entity(errorMessage).build();
}
}
В моем приложении Cofing я получаю ошибку cannot find symbol
для обоих моих картографов исключений.
private void addRestResourceClasses(Set<Class<?>> resources) {
resources.add(Exception.DataNotFoundExceptionMapper.class); // cannot find symbol for DataNotFoundExceptionMapper.class
resources.add(Exception.GenericExceptionMapper.class); // cannot find symbol
resources.add(Rest.AddressResource.class);
resources.add(Rest.CityinfoResource.class);
resources.add(Rest.HobbyResource.class);
resources.add(Rest.PersonResource.class);
resources.add(Rest.PhoneResource.class);
}
}
не должен ли я объявить их в моей конфигурации для отдыха или как я могу решить эту проблему?
РЕДАКТИРОВАТЬ: когда я переместил свои преобразователи из моего пакета исключений в мой пакет Rest,проблема остановлена, но я хочу, чтобы они были в отдельных папках для лучшей структуры.