Em algumas classes da minha aplicação tenho a necessidade do ID ser uma String e ser digitada pelo usuário, e também de ter campos marcados como unique.
o meu problema é o seguinte, se um usuário digita um campo que já existe ele me lança ou EntityExistsException ou ConstraintViolationException, só que não me lança (ou pelo menos ainda não conheço) o campo onde o exception ocorreu.
Ex.: Tenho uma classe Filial que tem o ID como String, quando tentar inserir o ID já existente no banco, gostaria que ele me falasse qual o campo (atributo, etc…) onde ocorreu a violação, se foi no ID, ou no EMAIL, etc…
Uso JPA com Hibernate
Tentei pegar o getConstraintName() do ConstraintViolationException mais veio null, e acredito que esse método não resolva meu problema, pois necessito do campo onde ocorreu e não o nome da CONSTRAINT
grato…