Вопрос

Я использую JSF 2, Myfaces, Hibernate-Validator-4.1.0.final.jar.

Я использую Hibernate-Validator для проверки значений, введенных в форме.

public class Client {
   @Persistent
   @Pattern(regexp = "|.+@.+\\.[a-z]+", message = "Email format is invalid.")
   private String email;
   //getter
}

Я разрабатываю модуль объемной загрузки, где я анализирую данные CSV и создаю записи базы данных.

...
try{
  Client cl=new Client();
  cl.setEmail("from_csv_data");
}catch( //validation failed

Как мне повторно использовать тот же валидатор здесь?



SET> ConstraintViolations = valyator.validate (NC);
бросает это исключение

SEVERE: Received 'java.lang.NoSuchMethodError' when invoking action listener '#{clientBean.bulkUpload}' for component 'j_idt86'

28 января 2011 г. 8:35:39 am javax.faces.event.methodexpressionActionListener Процедуракция
Серьезный: java.lang.nosuchmethoderror: javax.persistence.persistence.getPersistenceutil () ljavax/Persistence/Persistenceutil; at org.hibernate.validator.engine.resolver.jpatraversableresolver.isreachable (jpatraversableresolver.java:62)

Я попробовал это решение ссылка на сайт
У меня есть hibernate-jpa-2.0-api-1.0.0.final.jar, hibernate-validator-4.1.0.final.jar
Мне нужна другая банка, чтобы сделать эту работу?

Это было полезно?

Решение

Вы можете вызвать валидатор вручную с чем -то вроде:

ValidatorFactory factory = Validation.buildDefaultValidatorFactory();

Validator validator = factory.getValidator();

Client client = new Client();

Set<ConstraintViolation<Client>> constraintViolations = validator.validate(client);

Другие советы

Скорее всего, у вас есть еще один неполный файл JPA 2 на классе. К сожалению, некоторые неполные версии этой банки были выпущены на каком -то этапе (например, Toplink). Проверьте свою группу в классе, чтобы узнать любую банку, содержащую классы JPA. Смотрите также https://forum.hibernate.org/viewtopic.php?f=9&t=999855

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top