本文整理匯總了Java中javax.validation.ConstraintViolation.getPropertyPath方法的典型用法代碼示例。如果您正苦於以下問題:Java ConstraintViolation.getPropertyPath方法的具體用法?Java ConstraintViolation.getPropertyPath怎麽用?Java ConstraintViolation.getPropertyPath使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類javax.validation.ConstraintViolation
的用法示例。
在下文中一共展示了ConstraintViolation.getPropertyPath方法的5個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。
示例1: prepareMessage
import javax.validation.ConstraintViolation; //導入方法依賴的package包/類
private static String prepareMessage(ConstraintViolation property) {
if (!StringUtils.isEmpty(property.getPropertyPath().toString())) {
return property.getPropertyPath() + " : " + property.getMessage();
}
return property.getMessage();
}
示例2: JSR303Validator
import javax.validation.ConstraintViolation; //導入方法依賴的package包/類
/**
* 使用hibernate-validator實現的JSR303驗證model
*/
public <T> void JSR303Validator(T model) {
Set<ConstraintViolation<T>> constraintViolations = validator.validate(model);
if(constraintViolations.size() == 0) return;
for(ConstraintViolation<T> c : constraintViolations) {
throw new AssertException("Oop~ " + c.getPropertyPath() + " " + c.getMessage());
}
}
示例3: getConstraintViolationField
import javax.validation.ConstraintViolation; //導入方法依賴的package包/類
/**
* 通過根類和hibernate validator錯誤信息獲取當前驗證失敗的field對象
*
* @param rootClass pojo根類, 如:User.class類包含屬性info:Info.class,User即rootClass
* @param cv hibernate validator驗證結果對象{@link ConstraintViolation}
* @return 當前失敗的field對象
*/
static Field getConstraintViolationField(Class<?> rootClass, ConstraintViolation<Object> cv) {
try {
Field field = null;
for (Path.Node node : cv.getPropertyPath()) {
String fieldName = node.getName();
field = rootClass.getDeclaredField(fieldName);
rootClass = field.getType();
}
return field;
} catch (Exception e) {
throw new RuntimeException(e);
}
}
示例4: toResponse
import javax.validation.ConstraintViolation; //導入方法依賴的package包/類
@Override
public Response toResponse(ConstraintViolationException exception) {
logger.info(String.format("%s. Returning %s response.", exception, Response.Status.BAD_REQUEST));
if (logger.isDebugEnabled()) {
logger.debug(StringUtils.EMPTY, exception);
}
// start with the overall message which will be something like "Cannot create xyz"
final StringBuilder errorMessage = new StringBuilder(exception.getMessage()).append(" - ");
boolean first = true;
for (final ConstraintViolation violation : exception.getConstraintViolations()) {
if (!first) {
errorMessage.append(", ");
}
first = false;
// lastNode should end up as the field that failed validation
Path.Node lastNode = null;
for (final Path.Node node : violation.getPropertyPath()) {
lastNode = node;
}
// append something like "xyz must not be..."
errorMessage.append(lastNode.getName()).append(" ").append(violation.getMessage());
}
return Response.status(Response.Status.BAD_REQUEST).entity(errorMessage.toString()).type("text/plain").build();
}
示例5: contOnValidationError
import javax.validation.ConstraintViolation; //導入方法依賴的package包/類
/**
* Accepts the result from one of the many validation methods available and
* returns a List of ValidationErrors. If the size of the List is 0, no errors
* were encounter during validation.
*
* Usage:
* <pre>
* Validator validator = getValidator();
* List<ValidationError> errors = contOnValidationError(
* validator.validateProperty(myObject, "uuid"),
* validator.validateProperty(myObject, "name")
* );
* // If validation fails, this line will be reached.
* </pre>
*
* @param violationsArray a Set of one or more ConstraintViolations
* @return a List of zero or more ValidationErrors
* @since 1.0.0
*/
@SafeVarargs
protected final List<ValidationError> contOnValidationError(final Set<ConstraintViolation<Object>>... violationsArray) {
final List<ValidationError> errors = new ArrayList<>();
for (Set<ConstraintViolation<Object>> violations : violationsArray) {
for (ConstraintViolation violation : violations) {
if (violation.getPropertyPath().iterator().next().getName() != null) {
final String path = violation.getPropertyPath() != null ? violation.getPropertyPath().toString() : null;
final String message = violation.getMessage() != null ? StringUtils.removeStart(violation.getMessage(), path + ".") : null;
final String messageTemplate = violation.getMessageTemplate();
final String invalidValue = violation.getInvalidValue() != null ? violation.getInvalidValue().toString() : null;
final ValidationError error = new ValidationError(message, messageTemplate, path, invalidValue);
errors.add(error);
}
}
}
return errors;
}