Salut,
Pour valider l'unicité d'un champs jj'ai utilisé la proprité "unique" de @Column
Voici ma classe :
En cas d'erreur de validation j'utilise le fichier messages.properties dont le contenu est:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 @Entity @Table(name="TEST") public class Test{ @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private int id; @Size(min=3, max=50) @Column(name = "AA", nullable = false) private String aa; @NotNull @Digits(integer=8, fraction=2) @Column(name = "BB", nullable = false) private BigDecimal bb; @NotEmpty @Column(name = "CC", unique=true, nullable = false) private String cc; }
jusqu’à la tous fonctionne parfaitement quand j'essaye de valider une valeur de "cc" déjà existante dans la BD, le message "CC {0} already exist. Please fill in different value" est affichée.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Size.test.aa= must be between {2} and {1} characters long NotNull.test.bb= can not be blank Digits.test.bb=Only numeric data with max 8 digits and with max 2 precision is allowed NotEmpty.test.cc= can not be blank non.unique.cc=CC {0} already exist. Please fill in different value.
le probleme maintenant est que j'ai une 2 classe:
comment dois je traiter avec une contrainte d'unicité sur plusieurs champs? je voudrais affiché un message comme j'ai fais pour le champs "cc", indiquant au USer comme quoi la combine des 2 champs saisi existe deja ..
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 @Entity @Table(name="TEST1", uniqueConstraints = { @UniqueConstraint(columnNames = { "xx", "yy"}) }) public class Test1{ @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private int id; @NotBlank @Column(name = "XX", nullable = false) private String xx; @NotBlank @Column(name = "YY", nullable = false) private String yy; @NotBlank @Column(name = "ZZ", nullable = false) private String zz; }
MERCI![]()
Partager