本文整理汇总了Java中org.springframework.web.bind.annotation.ResponseStatus.reason方法的典型用法代码示例。如果您正苦于以下问题:Java ResponseStatus.reason方法的具体用法?Java ResponseStatus.reason怎么用?Java ResponseStatus.reason使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.springframework.web.bind.annotation.ResponseStatus
的用法示例。
在下文中一共展示了ResponseStatus.reason方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: processRuntimeException
import org.springframework.web.bind.annotation.ResponseStatus; //导入方法依赖的package包/类
@ExceptionHandler(Exception.class)
public ResponseEntity<ErrorDTO> processRuntimeException(Exception ex) throws Exception {
BodyBuilder builder;
ErrorDTO errorDTO;
ResponseStatus responseStatus = AnnotationUtils.findAnnotation(ex.getClass(), ResponseStatus.class);
if (responseStatus != null) {
builder = ResponseEntity.status(responseStatus.value());
errorDTO = new ErrorDTO("error." + responseStatus.value().value(), responseStatus.reason());
} else {
builder = ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR);
errorDTO = new ErrorDTO(ErrorConstants.ERR_INTERNAL_SERVER_ERROR, "Internal server error");
}
log.error("Exception in rest call", ex);
errorDTO.add("error", "error", ex.getMessage());
return builder.body(errorDTO);
}
示例2: processRuntimeException
import org.springframework.web.bind.annotation.ResponseStatus; //导入方法依赖的package包/类
@ExceptionHandler(Exception.class)
public ResponseEntity<ErrorVM> processRuntimeException(Exception ex) {
log.debug("Processing runtime exception", ex);
BodyBuilder builder;
ErrorVM errorVM;
ResponseStatus responseStatus = AnnotationUtils.findAnnotation(ex.getClass(), ResponseStatus.class);
if (responseStatus != null) {
builder = ResponseEntity.status(responseStatus.value());
errorVM = new ErrorVM("error." + responseStatus.value().value(), responseStatus.reason());
} else {
builder = ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR);
errorVM = new ErrorVM(ErrorConstants.ERR_INTERNAL_SERVER_ERROR, "Internal server error");
}
return builder.body(errorVM);
}
示例3: defaultErrorHandler
import org.springframework.web.bind.annotation.ResponseStatus; //导入方法依赖的package包/类
@ExceptionHandler(Exception.class)
public ResponseEntity<Map<String,Object>> defaultErrorHandler(Exception e) throws Exception {
if (e instanceof ServletException) {
// ServletException will be handled by Spring
throw e;
}
if (e instanceof AccessDeniedException) {
// will be handled by Spring
throw e;
}
final HttpStatus status;
final String statusMessage;
ResponseStatus responseStatus = AnnotationUtils.findAnnotation(e.getClass(), ResponseStatus.class);
if (responseStatus != null) {
status = ObjectUtils.firstNonNull(responseStatus.code(), responseStatus.value());
statusMessage = responseStatus.reason();
} else {
status = HttpStatus.INTERNAL_SERVER_ERROR;
statusMessage = null;
}
final ResponseEntityBuilder reb = ResponseEntities
.build(status)
.message(ObjectUtils.firstNonNull(e.getMessage(),statusMessage));
//DataExceptions can provide structured information about the error that
//will serialized under the "data" field in the response
if(e instanceof DataException<?>){
Object data = ((DataException<?>)e).getData();
if(data != null){ //data may be null
reb.data(data);
}
}
if(writeTrace){
reb.trace(ExceptionUtils.getStackTrace(e));
} else {
log.trace("trace omitted (webservice.errorhandler.writetrace=false)");
}
log.warn("ErrorResponse (status: {}, {}: {})", status, e.getClass().getSimpleName(), e.getMessage());
log.debug("STACKTRACE:", e);
return reb.build();
}