下面列出了javax.validation.Validation#buildDefaultValidatorFactory ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
@Test
public void testWorkflowTasklistInputParamWithEmptyString() {
WorkflowDef workflowDef = new WorkflowDef();//name is null
workflowDef.setSchemaVersion(2);
workflowDef.setName("test_env");
workflowDef.setOwnerEmail("[email protected]");
WorkflowTask workflowTask = new WorkflowTask();//name is null
workflowTask.setName("t1");
workflowTask.setWorkflowTaskType(TaskType.SIMPLE);
workflowTask.setTaskReferenceName("t1");
Map<String, Object> map = new HashMap<>();
map.put("blabla", "");
map.put("foo", new String[]{""});
workflowTask.setInputParameters(map);
workflowDef.getTasks().add(workflowTask);
ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
Validator validator = factory.getValidator();
Set<ConstraintViolation<Object>> result = validator.validate(workflowDef);
assertEquals(0, result.size());
}
public void initialize(final URL location, final ResourceBundle resources) {
final ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
final Model model = new Model();
final Validator validator = factory.getValidator();
nameField.textProperty().bindBidirectional(model.nameProperty());
model.countProperty().bind(Bindings.createObjectBinding(() ->
countSlider.valueProperty().intValue()
, countSlider.valueProperty()));
validateButton.setOnAction(e -> {
final Set<ConstraintViolation<Model>> violations = validator.validate(model);
validateMessageLabel.setText(violations.stream().map(v -> v.getMessage()).reduce("", (a, b) -> a + b));
});
}
@SuppressWarnings("Duplicates")
@Test
public void test(){
ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
Validator validator = factory.getValidator();
T212Map t212Map = T212Map.createDataLevel(map);
Set<ConstraintViolation<T212Map>> e0 = validator.validate(t212Map,
Default.class);
assertEquals(e0.size(),0);
t212Map.clear();
map.put("QN","20180101123010123-");
Set<ConstraintViolation<T212Map>> e1 = validator.validate(t212Map,
Default.class);
assertEquals(e1.size(),1);
}
@BeforeClass
public static void setUpValidator() {
ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
validator = factory.getValidator();
builder
.withAmount(1200)
.withDescription("Some description")
.withReference("Some reference")
.withProcessorId("1PROC")
.withProviderId("1PROV")
.withLastFourDigits("1234")
.withFirstSixDigits("123456")
.withCardType("visa")
.withPaymentOutcome(new PaymentOutcome("success"));
}
@BeforeClass
public static void setUpValidator() {
ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
validator = factory.getValidator();
builder
.withAmount(1200)
.withDescription("Some description")
.withReference("Some reference")
.withProcessorId("1PROC")
.withProviderId("1PROV")
.withCardExpiry("01/99")
.withCardType("visa")
.withLastFourDigits("1234")
.withPaymentOutcome(new PaymentOutcome("success"));
}
@Test
public void test_WHEN_valid_GIVEN_valid_model_THEN_ok_no_errors() {
// GIVEN
PersonModel person = new PersonModel( //
"Kim", //
"Kardashian", //
new GregorianCalendar(1980, Calendar.OCTOBER, 21));
ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
Validator validator = factory.getValidator();
// WHEN
Set<ConstraintViolation<PersonModel>> constraintViolations = validator
.validate(person);
// THEN
assertThat(constraintViolations).isEmpty();
}
public static JsonNode parseScalingHistory(String jsonString, HttpServletRequest httpServletRequest) throws JsonParseException, JsonMappingException, IOException{
List<String> violation_message = new ArrayList<String>();
ObjectNode result = new_mapper.createObjectNode();
result.put("valid", false);
JavaType javaType = getCollectionType(ArrayList.class, ArrayList.class, HistoryData.class);
new_mapper.configure(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY, true);
List<HistoryData> scalinghistory = (List<HistoryData>)new_mapper.readValue(jsonString, javaType);
ValidatorFactory vf = Validation.buildDefaultValidatorFactory();
Locale locale = LocaleUtil.getLocale(httpServletRequest);
MessageInterpolator interpolator = new LocaleSpecificMessageInterpolator(vf.getMessageInterpolator(), locale);
Validator validator = vf.usingContext().messageInterpolator(interpolator).getValidator();
Set<ConstraintViolation<List<HistoryData>>> set = validator.validate(scalinghistory);
if (set.size() > 0 ){
for (ConstraintViolation<List<HistoryData>> constraintViolation : set) {
violation_message.add(constraintViolation.getMessage());
}
result.set("violation_message", new_mapper.valueToTree(violation_message));
return result;
}
//additional data manipulation
String new_json = transformHistory(scalinghistory);
result.put("valid", true);
result.put("new_json", new_json);
return result;
}
@Before
public void setupBefore() {
// BeanValidatorの式言語の実装を独自のものにする。
ValidatorFactory validatorFactory = Validation.buildDefaultValidatorFactory();
Validator validator = validatorFactory.usingContext()
.messageInterpolator(new MessageInterpolatorAdapter(
// メッセージリソースの取得方法を切り替える
new ResourceBundleMessageResolver(),
// EL式の処理を切り替える
new MessageInterpolator(new ExpressionLanguageJEXLImpl())))
.getValidator();
// BeanValidationのValidatorを渡す
this.sheetBeanValidator = new SheetBeanValidator(validator);
this.errorFormatter = new SheetErrorFormatter();
}
@SuppressWarnings({"unchecked", "rawtypes"})
public JValidator(URL url) {
this.clazz = ReflectUtils.forName(url.getServiceInterface());
String jvalidation = url.getParameter("jvalidation");
ValidatorFactory factory;
if (jvalidation != null && jvalidation.length() > 0) {
factory = Validation.byProvider((Class) ReflectUtils.forName(jvalidation)).configure().buildValidatorFactory();
} else {
factory = Validation.buildDefaultValidatorFactory();
}
this.validator = factory.getValidator();
}
@Test
public void validateTodoValid() {
ToDo toDo = new ToDo("[email protected]","caption", "description 1", 6);
ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
Validator validator = factory.getValidator();
Set<ConstraintViolation<ToDo>> constraintViolations = validator.validate(toDo);
assertTrue(constraintViolations.isEmpty());
}
@Test
public void throwsConstraintViolationExceptionWhoseMessageContainsNameOfNonValidatingClass() {
final ValidatorFactory validatorFactory = Validation.buildDefaultValidatorFactory();
final BeanValidationInterceptor interceptor = new BeanValidationInterceptor(validatorFactory);
assertThatThrownBy(() -> interceptor.beforeExecution(new TestObject()))
.isInstanceOf(ConstraintViolationException.class)
.hasMessageContaining("org.hibersap.interceptor.impl.BeanValidationInterceptorTest$InnerObject");
}
@Test
public void testWorkflowDefConstraintsWithMapAsInputParam() {
WorkflowDef workflowDef = new WorkflowDef();//name is null
workflowDef.setSchemaVersion(2);
workflowDef.setName("test_env");
workflowDef.setOwnerEmail("[email protected]");
WorkflowTask workflowTask_1 = new WorkflowTask();
workflowTask_1.setName("task_1");
workflowTask_1.setTaskReferenceName("task_1");
workflowTask_1.setType(TaskType.TASK_TYPE_SIMPLE);
Map<String, Object> inputParam = new HashMap<>();
inputParam.put("taskId", "${CPEWF_TASK_ID} ${NETFLIX_STACK}");
Map<String, Object> envInputParam = new HashMap<>();
envInputParam.put("packageId", "${workflow.input.packageId}");
envInputParam.put("taskId", "${CPEWF_TASK_ID}");
envInputParam.put("NETFLIX_STACK", "${NETFLIX_STACK}");
envInputParam.put("NETFLIX_ENVIRONMENT", "${NETFLIX_ENVIRONMENT}");
inputParam.put("env", envInputParam);
workflowTask_1.setInputParameters(inputParam);
List<WorkflowTask> tasks = new ArrayList<>();
tasks.add(workflowTask_1);
workflowDef.setTasks(tasks);
ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
Validator validator = factory.getValidator();
Set<ConstraintViolation<Object>> result = validator.validate(workflowDef);
assertEquals(0, result.size());
}
@BeforeEach
public void init() {
emFactory = Persistence.createEntityManagerFactory("DB");
em = emFactory.createEntityManager();
valFactory = Validation.buildDefaultValidatorFactory();
validator = valFactory.getValidator();
}
public static JsonNode parseMetrics(String jsonString, HttpServletRequest httpServletRequest) throws JsonParseException, JsonMappingException, IOException{
List<String> violation_message = new ArrayList<String>();
ObjectNode result = new_mapper.createObjectNode();
result.put("valid", false);
//JavaType javaType = getCollectionType(ArrayList.class, HistoryData.class);
//new_mapper.configure(DeserializationFeature.ACCEPT_SINGLE_VALUE_AS_ARRAY, true);
logger.info("Received metrics: " + jsonString);
Metrics metrics = new_mapper.readValue(jsonString, Metrics.class);
ValidatorFactory vf = Validation.buildDefaultValidatorFactory();
Locale locale = LocaleUtil.getLocale(httpServletRequest);
MessageInterpolator interpolator = new LocaleSpecificMessageInterpolator(vf.getMessageInterpolator(), locale);
Validator validator = vf.usingContext().messageInterpolator(interpolator).getValidator();
Set<ConstraintViolation<Metrics>> set = validator.validate(metrics);
if (set.size() > 0 ){
for (ConstraintViolation<Metrics> constraintViolation : set) {
violation_message.add(constraintViolation.getMessage());
}
result.set("violation_message", new_mapper.valueToTree(violation_message));
return result;
}
//additional data manipulation
String new_json = metrics.transformOutput();
result.put("valid", true);
result.put("new_json", new_json);
return result;
}
@Test
public void testCPDataLevel(){
ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
Validator validator = factory.getValidator();
Set<ConstraintViolation<T212Map>> e2005 = validator.validate(cpDataLevel,Default.class,
T212MapLevelGroup.CpDataLevel.class, VersionGroup.V2005.class);
assertTrue(e2005.isEmpty());
Set<ConstraintViolation<T212Map>> e2017 = validator.validate(cpDataLevel,Default.class,
T212MapLevelGroup.CpDataLevel.class, VersionGroup.V2017.class);
assertTrue(e2017.isEmpty());
}
@Test
public void testConstraintCleanup() throws Exception {
final ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
Guice.createInjector(new ValidationModule(factory).validateAnnotatedOnly())
.getInstance(CustomService.class)
.doAction(new ComplexBean("perfect", 12));
factory.close();
}
@Before
public void before() {
ValidatorFactory config = Validation.buildDefaultValidatorFactory();
validator = config.getValidator();
}
@BeforeClass
public static void setUpValidator() {
ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
validator = factory.getValidator();
}
@BeforeClass
public static void before() {
ValidatorFactory config = Validation.buildDefaultValidatorFactory();
validator = config.getValidator();
sessionFactory = HibernateUtil.getSessionFactory(Strategy.MAP_KEY_BASED);
}
@Before
public void setUp() {
ValidatorFactory factory = Validation.buildDefaultValidatorFactory();
validator = factory.getValidator();
}