use of jakarta.validation.ValidationException in project hibernate-validator by hibernate.
the class GetAnnotationsParameterTest method testGetMessageParameter.
@Test
public void testGetMessageParameter() {
NotNull testAnnotation = new NotNull() {
@Override
public String message() {
return "test";
}
@Override
public Class<?>[] groups() {
return new Class<?>[] { Default.class };
}
@Override
public Class<? extends Payload>[] payload() {
@SuppressWarnings("unchecked") Class<? extends Payload>[] classes = new Class[] {};
return classes;
}
@Override
public Class<? extends Annotation> annotationType() {
return this.getClass();
}
};
String message = GetAnnotationAttribute.action(testAnnotation, "message", String.class).run();
assertEquals("test", message, "Wrong message");
Class<?>[] group = GetAnnotationAttribute.action(testAnnotation, "groups", Class[].class).run();
assertEquals(group[0], Default.class, "Wrong group");
try {
GetAnnotationAttribute.action(testAnnotation, "message", Integer.class).run();
fail();
} catch (ValidationException e) {
assertThat(e.getMessage()).startsWith("HV000082").as("Wrong exception message");
}
try {
GetAnnotationAttribute.action(testAnnotation, "foo", Integer.class).run();
fail();
} catch (ValidationException e) {
assertThat(e.getMessage()).startsWith("HV000083").as("Wrong exception message");
}
}
use of jakarta.validation.ValidationException in project hibernate-validator by hibernate.
the class ValidationBootstrapParameters method setValueExtractors.
@SuppressWarnings("unchecked")
private void setValueExtractors(Set<String> valueExtractorFqcns, ClassLoader externalClassLoader) {
for (String valueExtractorFqcn : valueExtractorFqcns) {
ValueExtractor<?> valueExtractor;
try {
Class<? extends ValueExtractor<?>> clazz = (Class<? extends ValueExtractor<?>>) run(LoadClass.action(valueExtractorFqcn, externalClassLoader));
valueExtractor = run(NewInstance.action(clazz, "value extractor class"));
} catch (ValidationException e) {
throw LOG.getUnableToInstantiateValueExtractorClassException(valueExtractorFqcn, e);
}
ValueExtractorDescriptor descriptor = new ValueExtractorDescriptor(valueExtractor);
ValueExtractorDescriptor previous = valueExtractorDescriptors.put(descriptor.getKey(), descriptor);
if (previous != null) {
throw LOG.getValueExtractorForTypeAndTypeUseAlreadyPresentException(valueExtractor, previous.getValueExtractor());
}
LOG.addingValueExtractor((Class<? extends ValueExtractor<?>>) valueExtractor.getClass());
}
}
use of jakarta.validation.ValidationException in project resteasy by resteasy.
the class GeneralValidatorImpl method isMethodValidatable.
@Override
public boolean isMethodValidatable(Method m) {
if (!isExecutableValidationEnabled) {
return false;
}
ExecutableType[] types = null;
List<ExecutableType[]> typesList = getExecutableTypesOnMethodInHierarchy(m);
if (typesList.size() > 1) {
throw new ValidationException(Messages.MESSAGES.validateOnExceptionOnMultipleMethod());
}
if (typesList.size() == 1) {
types = typesList.get(0);
} else {
ValidateOnExecution voe = m.getDeclaringClass().getAnnotation(ValidateOnExecution.class);
if (voe == null) {
types = defaultValidatedExecutableTypes;
} else {
if (voe.type().length > 0) {
types = voe.type();
} else {
types = defaultValidatedExecutableTypes;
}
}
}
boolean isGetterMethod = isGetter(m);
for (int i = 0; i < types.length; i++) {
switch(types[i]) {
case IMPLICIT:
case ALL:
return true;
case NONE:
continue;
case NON_GETTER_METHODS:
if (!isGetterMethod) {
return true;
}
continue;
case GETTER_METHODS:
if (isGetterMethod) {
return true;
}
continue;
default:
continue;
}
}
return false;
}
Aggregations