@Override public List<ObjectError> getAllErrors() { return this.bindingResult.getAllErrors(); }
@Override public List<ObjectError> getAllErrors() { return this.bindingResult.getAllErrors(); }
@Override public List<ObjectError> getAllErrors() { return this.bindingResult.getAllErrors(); }
@Override public List<ObjectError> getAllErrors() { return this.bindingResult.getAllErrors(); }
private static String getValidationErrorMessage(BindingResult bindingResult) { StringBuilder sb = new StringBuilder(); sb.append(bindingResult.getErrorCount()).append(" error(s): "); for (ObjectError error : bindingResult.getAllErrors()) { sb.append("[").append(error).append("] "); } return sb.toString(); }
@Override public String getMessage() { StringBuilder sb = new StringBuilder("Validation failed for argument [") .append(this.parameter.getParameterIndex()).append("] in ") .append(this.parameter.getExecutable().toGenericString()); if (this.bindingResult.getErrorCount() > 1) { sb.append(" with ").append(this.bindingResult.getErrorCount()).append(" errors"); } sb.append(": "); for (ObjectError error : this.bindingResult.getAllErrors()) { sb.append("[").append(error).append("] "); } return sb.toString(); }
/** * Returns diagnostic information about the errors held in this object. */ @Override public String getMessage() { MethodParameter parameter = getMethodParameter(); Assert.state(parameter != null, "No MethodParameter"); StringBuilder sb = new StringBuilder("Validation failed for argument at index ") .append(parameter.getParameterIndex()).append(" in method: ") .append(parameter.getExecutable().toGenericString()) .append(", with ").append(this.bindingResult.getErrorCount()).append(" error(s): "); for (ObjectError error : this.bindingResult.getAllErrors()) { sb.append("[").append(error).append("] "); } return sb.toString(); }
@PostMapping public ModelAndView create(@Valid Message message, BindingResult result, RedirectAttributes redirect) { if (result.hasErrors()) { return new ModelAndView("messages/form", "formErrors", result.getAllErrors()); } message = this.messageRepository.save(message); redirect.addFlashAttribute("globalMessage", "Successfully created a new message"); return new ModelAndView("redirect:/{message.id}", "message.id", message.getId()); }
/** * Assert the given model attribute(s) do not have errors. */ public ResultMatcher attributeHasNoErrors(final String... names) { return mvcResult -> { ModelAndView mav = getModelAndView(mvcResult); for (String name : names) { BindingResult result = getBindingResult(mav, name); assertTrue("Unexpected errors for attribute '" + name + "': " + result.getAllErrors(), !result.hasErrors()); } }; }
@ExceptionHandler(MethodArgumentNotValidException.class) public ResponseEntity<Map<String, Object>> handleMethodArgumentNotValidException( HttpServletRequest request, MethodArgumentNotValidException ex ) { final Optional<ObjectError> firstError = ex.getBindingResult().getAllErrors().stream().findFirst(); if (firstError.isPresent()) { final String firstErrorMessage = firstError.get().getDefaultMessage(); return handleError(request, BAD_REQUEST, new BadRequestException(firstErrorMessage)); } return handleError(request, BAD_REQUEST, ex); }
@Override public boolean equals(Object other) { if (this == other) { return true; } if (!(other instanceof BindingResult)) { return false; } BindingResult otherResult = (BindingResult) other; return (getObjectName().equals(otherResult.getObjectName()) && ObjectUtils.nullSafeEquals(getTarget(), otherResult.getTarget()) && getAllErrors().equals(otherResult.getAllErrors())); }
private void handleException(Map<String, Object> errorAttributes, Throwable error, boolean includeStackTrace) { if (this.includeException) { errorAttributes.put("exception", error.getClass().getName()); } if (includeStackTrace) { addStackTrace(errorAttributes, error); } if (error instanceof BindingResult) { BindingResult result = (BindingResult) error; if (result.hasErrors()) { errorAttributes.put("errors", result.getAllErrors()); } } }
@Override public String getMessage() { StringBuilder sb = new StringBuilder("Validation failed for argument [") .append(this.parameter.getParameterIndex()).append("] in ") .append(this.parameter.getExecutable().toGenericString()); if (this.bindingResult.getErrorCount() > 1) { sb.append(" with ").append(this.bindingResult.getErrorCount()).append(" errors"); } sb.append(": "); for (ObjectError error : this.bindingResult.getAllErrors()) { sb.append("[").append(error).append("] "); } return sb.toString(); }
/** * Returns diagnostic information about the errors held in this object. */ @Override public String getMessage() { MethodParameter parameter = getMethodParameter(); Assert.state(parameter != null, "No MethodParameter"); StringBuilder sb = new StringBuilder("Validation failed for argument at index ") .append(parameter.getParameterIndex()).append(" in method: ") .append(parameter.getExecutable().toGenericString()) .append(", with ").append(this.bindingResult.getErrorCount()).append(" error(s): "); for (ObjectError error : this.bindingResult.getAllErrors()) { sb.append("[").append(error).append("] "); } return sb.toString(); }
@Override public boolean equals(Object other) { if (this == other) { return true; } if (!(other instanceof BindingResult)) { return false; } BindingResult otherResult = (BindingResult) other; return (getObjectName().equals(otherResult.getObjectName()) && ObjectUtils.nullSafeEquals(getTarget(), otherResult.getTarget()) && getAllErrors().equals(otherResult.getAllErrors())); }
private void addErrorMessage(Map<String, Object> errorAttributes, Throwable error) { BindingResult result = extractBindingResult(error); if (result == null) { errorAttributes.put("message", error.getMessage()); return; } if (result.hasErrors()) { errorAttributes.put("errors", result.getAllErrors()); errorAttributes.put("message", "Validation failed for object='" + result.getObjectName() + "'. Error count: " + result.getErrorCount()); } else { errorAttributes.put("message", "No errors"); } }
private BindValidationException getBindValidationException( ConfigurationPropertyName name, BindingResult errors) { Set<ConfigurationProperty> boundProperties = this.boundProperties.stream() .filter((property) -> name.isAncestorOf(property.getName())) .collect(Collectors.toCollection(LinkedHashSet::new)); ValidationErrors validationErrors = new ValidationErrors(name, boundProperties, errors.getAllErrors()); return new BindValidationException(validationErrors); }
/** * analyzes the error information, and converts it into a Javascript object string, which can be passed to to the HTML form through the entityForm * @param result * @return */ private String resultToJS(BindingResult result) { StringBuffer sb = new StringBuffer("["); List<ObjectError> errors = result.getAllErrors(); for (ObjectError objectError : errors) { if (objectError instanceof FieldError) { FieldError ferr = (FieldError) objectError; sb.append("{"); String fieldOnly = StringUtil.extractFieldNameFromExpression(ferr.getField()); sb.append("\"").append(fieldOnly).append("\":"); String localizedMessage = BLCMessageUtils.getMessage(ferr.getDefaultMessage()); sb.append("\"").append(localizedMessage).append("\""); sb.append("},"); } } if (sb.length() > 1) { sb.deleteCharAt(sb.length() - 1); //the last comma } sb.append("]"); return sb.toString(); }
@ExceptionHandler(BindException.class) @ResponseStatus(HttpStatus.BAD_REQUEST) ResponseMessage handleException(BindException e) { SimpleValidateResults results = new SimpleValidateResults(); e.getBindingResult().getAllErrors() .stream() .filter(FieldError.class::isInstance) .map(FieldError.class::cast) .forEach(fieldError -> results.addResult(fieldError.getField(), fieldError.getDefaultMessage())); return ResponseMessage.error(400, results.getResults().isEmpty() ? e.getMessage() : results.getResults().get(0).getMessage()).result(results.getResults()); }
@ExceptionHandler(MethodArgumentNotValidException.class) @ResponseStatus(HttpStatus.BAD_REQUEST) ResponseMessage handleException(MethodArgumentNotValidException e) { SimpleValidateResults results = new SimpleValidateResults(); e.getBindingResult().getAllErrors() .stream() .filter(FieldError.class::isInstance) .map(FieldError.class::cast) .forEach(fieldError -> results.addResult(fieldError.getField(), fieldError.getDefaultMessage())); return ResponseMessage.error(400, results.getResults().isEmpty() ? e.getMessage() : results.getResults().get(0).getMessage()).result(results.getResults()); }