Glop,

Dans le cadre d'une application web, je collecte, entre-autre, deux dates avec heure. Afin que ces dates puissent être insérée dans une base de données, un jeu de JavaScript impose à l'utilisateur de renseigner une date et une heure sous la forme aaaa-mm-jj hh:mm:ss.
Or, avant d'insérer ces données dans la base, j'ai besoin de m'assurer qu'elles vérifient une règle d'antériorité. La date A doit être antérieure à la date B.
Voici comment je procède actuellement:
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
25
26
27
28
 
		(...)
		// on vérifie le bon ordonancement chronologique des dates
		Date A_date = new Date();
		Date B_date = new Date();
		Date A_time = new Date();
		Date B_time = new Date();
 
		StringTokenizer strTkn = new StringTokenizer(date_A);
		String A_date_str = strTkn.nextToken();
		String A_time_str = strTkn.nextToken();
		strTkn = new java.util.StringTokenizer(date_B);
		String B_date_str = strTkn.nextToken();
		String B_time_str = strTkn.nextToken();
 
		A_date = java.sql.Date.valueOf(A_date_str);
		B_date = java.sql.Date.valueOf(B_date_str);
		A_time = java.sql.Time.valueOf(A_time_str);
		B_time = java.sql.Time.valueOf(B_time_str);
 
		// si la date A n'est pas inférieure à la seconde prêt à la date B, on a une erreur
		if (
				( B_date.equals(A_date) && B_time.before(A_time ) ) ||
				( B_date.before(A_date) )
			){
			erreurs.add("saisie",new ActionError("saisie.erreur.chronologie"));
		}
		(...)
Je trouve particulièrement crados ce que j'ai fait, mais je ne vois pas trop comment procéder autrement. Des idées?