我有ExceptionMapper一个通用公共库的一部分:
@Provider
public class GenericExceptionMapper implements ExceptionMapper<GenericException> {
...
}
现在,在我的具体项目中,我有自己的ExceptionMapper:
@Provider
public class SomeAdHocExceptionMapper implements ExceptionMapper<SomeAdHocException> {
...
}
我想将其转换SomeAdHocException为GenericException并让GenericExceptionMapper负责进一步处理。我尝试了以下两个选项,但都不起作用:
[1]GenericException投入SomeAdHocExceptionMapper:
@Provider
public class SomeAdHocExceptionMapper implements ExceptionMapper<SomeAdHocException> {
public Response toResponse(SomeAdHocException e) {
throw new GenericException(e);
}
}
[2]GenericExceptionMapper注入SomeAdHocExceptionMapper:
@Provider
public class SomeAdHocExceptionMapper implements ExceptionMapper<SomeAdHocException> {
@Inject
private GenericExceptionMapper mapper;
public Response toResponse(SomeAdHocException e) {
return mapper.toResponse(new GenericException(e));
}
}
这两个选项都给出了依赖性异常。
我该如何解决这个问题?