Łukasz
D.
Software Developer,
DevOps Fan
Temat: Pytanie o wyjątki rzucane przez JPA podczas walidacji
WitamNapisałem prostą aplikację w springu 3.0.1 z wykorzystaniem jpa 2.0 i hibernate'a 3.3 i postgresql 8.3. Wszystko działa mniej więcej dobrze, tylko mam wątpliwości co do walidacji. Otóż mam encję:
@Entity
@Table(schema = "public",name = "url_entity")
public class UrlEntity {
...
private String url;
...
@NotNull
@Size(min = 1)
@Column(unique = true)
public String getUrl() {
return url;
}
}
Kiedy próbuję zapisać nową encję do bazy i pole url jest nullem bądź jest puste, dostaję wyjątek javax.validation.ConstraintViolationException, ale gdy nie jest zachowana unikalność pola leci wyjątek javax.persistence.PersistenceException. Czy tak powinno być ?
Czy nie powinien lecieć jednak wyjątek klasy javax.validation.ConstraintViolationException?
Kawałek kodu Dao:
Łukasz Dziedziul edytował(a) ten post dnia 23.04.10 o godzinie 16:48
public UrlEntity save(UrlEntity entity) {
entityManager.persist(entity);
entityManager.flush();
return entity;
}