Subversion Repositories eFlore/Applications.coel

Rev

Rev 231 | Rev 264 | Go to most recent revision | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 231 Rev 245
1
package org.tela_botanica.client.modeles;
1
package org.tela_botanica.client.modeles;
2
 
2
 
3
import org.tela_botanica.client.RegistreId;
3
import org.tela_botanica.client.RegistreId;
4
import org.tela_botanica.client.interfaces.Rafraichissable;
4
import org.tela_botanica.client.interfaces.Rafraichissable;
5
 
5
 
6
import com.extjs.gxt.ui.client.Registry;
6
import com.extjs.gxt.ui.client.Registry;
7
import com.extjs.gxt.ui.client.widget.Info;
7
import com.extjs.gxt.ui.client.widget.Info;
8
import com.google.gwt.core.client.GWT;
8
import com.google.gwt.core.client.GWT;
9
import com.google.gwt.http.client.Request;
9
import com.google.gwt.http.client.Request;
10
import com.google.gwt.http.client.RequestBuilder;
10
import com.google.gwt.http.client.RequestBuilder;
11
import com.google.gwt.http.client.RequestCallback;
11
import com.google.gwt.http.client.RequestCallback;
12
import com.google.gwt.http.client.RequestException;
12
import com.google.gwt.http.client.RequestException;
13
import com.google.gwt.http.client.Response;
13
import com.google.gwt.http.client.Response;
14
import com.google.gwt.http.client.URL;
14
import com.google.gwt.http.client.URL;
15
import com.google.gwt.json.client.JSONArray;
15
import com.google.gwt.json.client.JSONArray;
16
import com.google.gwt.json.client.JSONParser;
16
import com.google.gwt.json.client.JSONParser;
17
import com.google.gwt.json.client.JSONValue;
17
import com.google.gwt.json.client.JSONValue;
18
 
18
 
19
public class StructureAPersonneAsyncDao {
19
public class StructureAPersonneAsyncDao {
20
	private static final String SERVICE_NOM = "CoelStructureAPersonne";
20
	private static final String SERVICE_NOM = "CoelStructureAPersonne";
21
	
21
	
22
	public void selectionner(final Rafraichissable r, String idUtilisateur, final String idStructure, final String idRole) {
22
	public void selectionner(final Rafraichissable r, String idUtilisateur, final String idStructure, final String idRole) {
23
		// Ajout des paramètres et données à selectionner dans l'URL
23
		// Ajout des paramètres et données à selectionner dans l'URL
24
		final String url = ((Configuration) Registry.get(RegistreId.CONFIG)).getServiceBaseUrl() + 
24
		final String url = ((Configuration) Registry.get(RegistreId.CONFIG)).getServiceBaseUrl() + 
25
			SERVICE_NOM +
25
			SERVICE_NOM + "/" +
26
			(idStructure == null ? "" : "/"+idStructure) +
26
			(idStructure == null ? "*" : idStructure) + "/" +
27
			(idRole == null ? "" : "/"+idRole) +
27
			(idRole == null ? "*" : idRole) + "/" +
28
			"";
28
			"";
29
		
29
		
30
		RequestBuilder rb = new RequestBuilder(RequestBuilder.GET, url);
30
		RequestBuilder rb = new RequestBuilder(RequestBuilder.GET, url);
31
		try {
31
		try {
32
			rb.sendRequest(null, new RequestCallback() {
32
			rb.sendRequest(null, new RequestCallback() {
33
 
33
 
34
				public void onError(Request request, Throwable exception) {
34
				public void onError(Request request, Throwable exception) {
35
					// Gestion des exceptions déclenchées par l'exécution de la requête 
35
					// Gestion des exceptions déclenchées par l'exécution de la requête 
36
					GWT.log("Erreur à l'exécution du service "+SERVICE_NOM+" (selection)", exception);
36
					GWT.log("Erreur à l'exécution du service "+SERVICE_NOM+" (selection)", exception);
37
					Info.display("Erreur de Requête", "Une erreur s'est produite lors de l'exécution de la requête.");
37
					Info.display("Erreur de Requête", "Une erreur s'est produite lors de l'exécution de la requête.");
38
				}
38
				}
39
				
39
				
40
				public void onErrorHTTP(Request request, Response reponse) {
40
				public void onErrorHTTP(Request request, Response reponse) {
41
					// Gestion des erreurs HTTP renvoyé par Apache ou JRest
41
					// Gestion des erreurs HTTP renvoyé par Apache ou JRest
42
					Information info = new Information("erreur_jrest", JSONParser.parse(reponse.getText()).isArray());
42
					Information info = new Information("erreur_jrest", JSONParser.parse(reponse.getText()).isArray());
43
					GWT.log("Erreur JREST - Code "+reponse.getStatusCode()+"\n"+info.getMessages().toString(), null);
43
					GWT.log("Erreur JREST - Code "+reponse.getStatusCode()+"\n"+info.getMessages().toString(), null);
44
					Info.display("Erreur JREST - Code "+reponse.getStatusCode(), info.toString());
44
					Info.display("Erreur JREST - Code "+reponse.getStatusCode(), info.toString());
45
				}
45
				}
46
				
46
				
47
				public void onResponseReceived(Request request, Response response) {
47
				public void onResponseReceived(Request request, Response response) {
48
					// Si le code de réponse HTTP ne vaut pas 200 OK, on lance le mécanise d'erreur HTTP
48
					// Si le code de réponse HTTP ne vaut pas 200 OK, on lance le mécanise d'erreur HTTP
49
					if (response.getStatusCode() != 200) {
49
					if (response.getStatusCode() != 200) {
50
						onErrorHTTP(request, response);
50
						onErrorHTTP(request, response);
51
					} else {
51
					} else {
52
						if (response.getText().length() != 0 && response.getText() != null) {
52
						if (response.getText().length() != 0 && response.getText() != null) {
53
							final JSONValue responseValue = JSONParser.parse(response.getText());
53
							final JSONValue responseValue = JSONParser.parse(response.getText());
54
		
54
		
55
							// Si la requête est un succès, reception d'un tableau
55
							// Si la requête est un succès, reception d'un tableau
56
							if (responseValue.isArray() != null) {
56
							if (responseValue.isArray() != null) {
57
								final JSONArray reponse = responseValue.isArray();
57
								final JSONArray reponse = responseValue.isArray();
58
								// Transformation du tableau JSON réponse en ListeInstitution
58
								// Transformation du tableau JSON réponse en ListeInstitution
59
								Information info = new Information("liste_structure_a_personne");
59
								Information info = new Information("liste_structure_a_personne");
60
								StructureAPersonneListe personnel = new StructureAPersonneListe(reponse);
60
								StructureAPersonneListe personnel = new StructureAPersonneListe(reponse);
61
								info.setDonnee(0, personnel);
61
								info.setDonnee(0, personnel);
62
								// et on met à jour le demandeur des données
62
								// et on met à jour le demandeur des données
63
								r.rafraichir(info);
63
								r.rafraichir(info);
64
							} else {
64
							} else {
65
								GWT.log(url+"\n\tLa réponse n'est pas un talbeau JSON et vaut : "+responseValue.toString(), null);
65
								GWT.log(url+"\n\tLa réponse n'est pas un talbeau JSON et vaut : "+responseValue.toString(), null);
66
							}
66
							}
67
						} else {
67
						} else {
68
							if (idStructure == null) {
68
							if (idStructure == null) {
69
								// Dans le cas, où nous demandons toutes les relations Structure à Personne et qu'il n'y en a pas, nous retournons un message d'information
69
								// Dans le cas, où nous demandons toutes les relations Structure à Personne et qu'il n'y en a pas, nous retournons un message d'information
70
								Information info = new Information("liste_structure_a_personne");
70
								Information info = new Information("liste_structure_a_personne");
71
								info.setMessage("Aucun personnel");
71
								info.setMessage("Aucun personnel");
72
								r.rafraichir(info);
72
								r.rafraichir(info);
73
							} else {
73
							} else {
74
								GWT.log(url, null);
74
								GWT.log(url, null);
75
								if (response.getText().length() == 0) {
75
								if (response.getText().length() == 0) {
76
									GWT.log("\tLa réponse a une taille de 0", null);
76
									GWT.log("\tLa réponse a une taille de 0", null);
77
								}
77
								}
78
								if (response.getText() == null) {
78
								if (response.getText() == null) {
79
									GWT.log("\tLa réponse vaul null", null);
79
									GWT.log("\tLa réponse vaul null", null);
80
								}
80
								}
81
							}
81
							}
82
						}
82
						}
83
					}
83
					}
84
				}
84
				}
85
			});
85
			});
86
		} catch (RequestException e) {
86
		} catch (RequestException e) {
87
			// Gestion des exceptions déclenchées par la création de la requête (url non-valide ?)
87
			// Gestion des exceptions déclenchées par la création de la requête (url non-valide ?)
88
			GWT.log("Erreur à la création du service "+SERVICE_NOM+" (selection)", e);
88
			GWT.log("Erreur à la création du service "+SERVICE_NOM+" (selection)", e);
89
			Info.display("Erreur de Requête", "Une erreur s'est produite lors de la création de la requête.");
89
			Info.display("Erreur de Requête", "Une erreur s'est produite lors de la création de la requête.");
90
		}
90
		}
91
	}
91
	}
92
 
92
 
93
	public void ajouter(final Rafraichissable vue, String utilisateurId, String structureId, StructureAPersonne personnel) {
93
	public void ajouter(final Rafraichissable vue, String utilisateurId, String structureId, StructureAPersonne personnel) {
94
		final String url = ((Configuration) Registry.get(RegistreId.CONFIG)).getServiceBaseUrl() + 
94
		final String url = ((Configuration) Registry.get(RegistreId.CONFIG)).getServiceBaseUrl() + 
95
		SERVICE_NOM + "/";
95
		SERVICE_NOM + "/";
96
		RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, url);
96
		RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, url);
97
		
97
		
98
		String postDonnees = "cmhl_ce_modifier_par=" + utilisateurId +
98
		String postDonnees = "cmhl_ce_modifier_par=" + utilisateurId +
99
			"&csap_id_structure=" + structureId +
99
			"&csap_id_structure=" + structureId +
100
			"&csap_id_personne=" + URL.encodeComponent(personnel.getIdPersonne()) +
100
			"&csap_id_personne=" + URL.encodeComponent(personnel.getIdPersonne()) +
101
			"&csap_id_role=" + URL.encodeComponent(personnel.getIdRole()) +
101
			"&csap_id_role=" + URL.encodeComponent(personnel.getIdRole()) +
102
			"&csap_ce_truk_fonction=" + URL.encodeComponent(personnel.getFonction()) +
102
			"&csap_ce_truk_fonction=" + URL.encodeComponent(personnel.getFonction()) +
103
			"&csap_service=" + URL.encodeComponent(personnel.getService()) +
103
			"&csap_service=" + URL.encodeComponent(personnel.getService()) +
104
			"&csap_ce_truk_statut=" + URL.encodeComponent(personnel.getStatut()) +
104
			"&csap_ce_truk_statut=" + URL.encodeComponent(personnel.getStatut()) +
105
			"&csap_mark_contact=" + URL.encodeComponent(personnel.getContact()) +
105
			"&csap_mark_contact=" + URL.encodeComponent(personnel.getContact()) +
106
			"&csap_bota_travail_hebdo_tps=" + URL.encodeComponent(personnel.getBotaTravailHebdoTps()) +
106
			"&csap_bota_travail_hebdo_tps=" + URL.encodeComponent(personnel.getBotaTravailHebdoTps()) +
107
			"&cp_prenom=" + URL.encodeComponent(personnel.getPrenom()) +
107
			"&cp_prenom=" + URL.encodeComponent(personnel.getPrenom()) +
108
			"&cp_nom=" + URL.encodeComponent(personnel.getNom()) +
108
			"&cp_nom=" + URL.encodeComponent(personnel.getNom()) +
109
			"&cp_truk_telephone=" + URL.encodeComponent(personnel.getTelephone()) +
109
			"&cp_truk_telephone=" + URL.encodeComponent(personnel.getTelephone()) +
110
			"&cp_truk_fax=" + URL.encodeComponent(personnel.getFax()) +
110
			"&cp_truk_fax=" + URL.encodeComponent(personnel.getFax()) +
111
			"&cp_truk_courriel=" + URL.encodeComponent(personnel.getCourriel()) +
111
			"&cp_truk_courriel=" + URL.encodeComponent(personnel.getCourriel()) +
112
			"&cp_ce_truk_specialite=" + URL.encodeComponent(personnel.getSpecialite()) +
112
			"&cp_ce_truk_specialite=" + URL.encodeComponent(personnel.getSpecialite()) +
113
			"";
113
			"";
114
	
114
	
115
		try {
115
		try {
116
			rb.sendRequest(postDonnees, new RequestCallback() {
116
			rb.sendRequest(postDonnees, new RequestCallback() {
117
	
117
	
118
				public void onError(Request request, Throwable exception) {
118
				public void onError(Request request, Throwable exception) {
119
					// Gestion des exceptions déclenchées par l'exécution de la requête 
119
					// Gestion des exceptions déclenchées par l'exécution de la requête 
120
					GWT.log("Erreur à l'exécution du service "+SERVICE_NOM+" (ajout)", exception);
120
					GWT.log("Erreur à l'exécution du service "+SERVICE_NOM+" (ajout)", exception);
121
					Info.display("Erreur de Requête", "Une erreur s'est produite lors de l'exécution de la requête.");
121
					Info.display("Erreur de Requête", "Une erreur s'est produite lors de l'exécution de la requête.");
122
				}
122
				}
123
				
123
				
124
				public void onErrorHTTP(Request request, Response reponse) {
124
				public void onErrorHTTP(Request request, Response reponse) {
125
					// Gestion des erreurs HTTP renvoyé par Apache ou JRest 
125
					// Gestion des erreurs HTTP renvoyé par Apache ou JRest 
126
					Information info = new Information("erreur_jrest", JSONParser.parse(reponse.getText()).isArray());
126
					Information info = new Information("erreur_jrest", JSONParser.parse(reponse.getText()).isArray());
127
					GWT.log("Erreur JREST - Code "+reponse.getStatusCode()+"\n"+info.getMessages().toString(), null);
127
					GWT.log("Erreur JREST - Code "+reponse.getStatusCode()+"\n"+info.getMessages().toString(), null);
128
					Info.display("Erreur JREST - Code "+reponse.getStatusCode(), info.toString());
128
					Info.display("Erreur JREST - Code "+reponse.getStatusCode(), info.toString());
129
				}
129
				}
130
	
130
	
131
				public void onResponseReceived(Request request, Response response) {
131
				public void onResponseReceived(Request request, Response response) {
132
					// Si le code de réponse HTTP ne vaut pas 200 OK, on lance le mécanise d'erreur HTTP
132
					// Si le code de réponse HTTP ne vaut pas 200 OK, on lance le mécanise d'erreur HTTP
133
					if (response.getStatusCode() != 200) {
133
					if (response.getStatusCode() != 200) {
134
						onErrorHTTP(request, response);
134
						onErrorHTTP(request, response);
135
					} else {
135
					} else {
136
						if (response.getText().length() != 0 && response.getText() != null) {
136
						if (response.getText().length() != 0 && response.getText() != null) {
137
							final JSONValue responseValue = JSONParser.parse(response.getText());
137
							final JSONValue responseValue = JSONParser.parse(response.getText());
138
							
138
							
139
							// Si la requête est un succès, reception d'une chaine
139
							// Si la requête est un succès, reception d'une chaine
140
							if (responseValue.isString() != null) {
140
							if (responseValue.isString() != null) {
141
								Information info = new Information("ajout_structure_a_personne", responseValue.isString().stringValue());
141
								Information info = new Information("ajout_structure_a_personne", responseValue.isString().stringValue());
142
								vue.rafraichir(info);
142
								vue.rafraichir(info);
143
							} else {
143
							} else {
144
								GWT.log(url+"\n\tLa réponse n'est pas une chaine JSON.", null);
144
								GWT.log(url+"\n\tLa réponse n'est pas une chaine JSON.", null);
145
							}
145
							}
146
						} else {
146
						} else {
147
							GWT.log(url, null);
147
							GWT.log(url, null);
148
							if (response.getText().length() == 0) {
148
							if (response.getText().length() == 0) {
149
								GWT.log("\tLa réponse a une taille de 0", null);
149
								GWT.log("\tLa réponse a une taille de 0", null);
150
							}
150
							}
151
							if (response.getText() == null) {
151
							if (response.getText() == null) {
152
								GWT.log("\tLa réponse vaul null", null);
152
								GWT.log("\tLa réponse vaul null", null);
153
							}
153
							}
154
						}
154
						}
155
					}
155
					}
156
				}
156
				}
157
				
157
				
158
			}) ;
158
			}) ;
159
		} catch (RequestException e) {
159
		} catch (RequestException e) {
160
			// Gestion des exceptions déclenchées par la création de la requête (url non-valide ?)
160
			// Gestion des exceptions déclenchées par la création de la requête (url non-valide ?)
161
			GWT.log("Erreur à la création du service "+SERVICE_NOM+" (ajout)", e);
161
			GWT.log("Erreur à la création du service "+SERVICE_NOM+" (ajout)", e);
162
			Info.display("Erreur de Requête", "Une erreur s'est produite lors de la création de la requête.");
162
			Info.display("Erreur de Requête", "Une erreur s'est produite lors de la création de la requête.");
163
		}
163
		}
164
	}
164
	}
165
	
165
	
166
	public void modifier(final Rafraichissable vue, String utilisateurId, StructureAPersonne personnel) {
166
	public void modifier(final Rafraichissable vue, String utilisateurId, StructureAPersonne personnel) {
167
		final String url = ((Configuration) Registry.get(RegistreId.CONFIG)).getServiceBaseUrl() + 
167
		final String url = ((Configuration) Registry.get(RegistreId.CONFIG)).getServiceBaseUrl() + 
168
		SERVICE_NOM + "/" +
168
		SERVICE_NOM + "/" +
169
		personnel.getIdStructure() + "/" +
169
		personnel.getIdStructure() + "/" +
170
		personnel.getIdPersonne() + "/" +
170
		personnel.getIdPersonne() + "/" +
171
		personnel.getIdRole()
171
		personnel.getIdRole()
172
		;
172
		;
173
	
173
	
174
		RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, url);
174
		RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, url);
175
		
175
		
176
		String postDonnees = 	"cmhl_ce_modifier_par=" + utilisateurId +
176
		String postDonnees = 	"cmhl_ce_modifier_par=" + utilisateurId +
177
			"&csap_id_structure=" + URL.encodeComponent(personnel.getIdStructure()) +
-
 
178
			"&csap_id_personne=" + URL.encodeComponent(personnel.getIdPersonne()) +
-
 
179
			"&csap_id_role=" + URL.encodeComponent(personnel.getIdRole()) +
-
 
180
			"&csap_ce_truk_fonction=" + URL.encodeComponent(personnel.getFonction()) +
177
			"&csap_ce_truk_fonction=" + URL.encodeComponent(personnel.getFonction()) +
181
			"&csap_service=" + URL.encodeComponent(personnel.getService()) +
178
			"&csap_service=" + URL.encodeComponent(personnel.getService()) +
182
			"&csap_ce_truk_statut=" + URL.encodeComponent(personnel.getStatut()) +
179
			"&csap_ce_truk_statut=" + URL.encodeComponent(personnel.getStatut()) +
183
			"&csap_mark_contact=" + URL.encodeComponent(personnel.getContact()) +
180
			"&csap_mark_contact=" + URL.encodeComponent(personnel.getContact()) +
184
			"&csap_bota_travail_hebdo_tps=" + URL.encodeComponent(personnel.getBotaTravailHebdoTps()) +
181
			"&csap_bota_travail_hebdo_tps=" + URL.encodeComponent(personnel.getBotaTravailHebdoTps()) +
185
			"&cp_prenom=" + URL.encodeComponent(personnel.getPrenom()) +
182
			"&cp_prenom=" + URL.encodeComponent(personnel.getPrenom()) +
186
			"&cp_nom=" + URL.encodeComponent(personnel.getNom()) +
183
			"&cp_nom=" + URL.encodeComponent(personnel.getNom()) +
187
			"&cp_truk_telephone=" + URL.encodeComponent(personnel.getTelephone()) +
184
			"&cp_truk_telephone=" + URL.encodeComponent(personnel.getTelephone()) +
188
			"&cp_truk_fax=" + URL.encodeComponent(personnel.getFax()) +
185
			"&cp_truk_fax=" + URL.encodeComponent(personnel.getFax()) +
189
			"&cp_truk_courriel=" + URL.encodeComponent(personnel.getCourriel()) +
186
			"&cp_truk_courriel=" + URL.encodeComponent(personnel.getCourriel()) +
190
			"&cp_ce_truk_specialite=" + URL.encodeComponent(personnel.getSpecialite()) +
187
			"&cp_ce_truk_specialite=" + URL.encodeComponent(personnel.getSpecialite()) +
191
			"";
188
			"";
192
	
189
	
193
		try {
190
		try {
194
			rb.sendRequest(postDonnees, new RequestCallback() {
191
			rb.sendRequest(postDonnees, new RequestCallback() {
195
	
192
	
196
				public void onError(Request request, Throwable exception) {
193
				public void onError(Request request, Throwable exception) {
197
					// Gestion des exceptions déclenchées par l'exécution de la requête 
194
					// Gestion des exceptions déclenchées par l'exécution de la requête 
198
					GWT.log("Erreur à l'exécution du service "+SERVICE_NOM+" (modif)", exception);
195
					GWT.log("Erreur à l'exécution du service "+SERVICE_NOM+" (modif)", exception);
199
					Info.display("Erreur de Requête", "Une erreur s'est produite lors de l'exécution de la requête.");
196
					Info.display("Erreur de Requête", "Une erreur s'est produite lors de l'exécution de la requête.");
200
				}
197
				}
201
				
198
				
202
				public void onErrorHTTP(Request request, Response reponse) {
199
				public void onErrorHTTP(Request request, Response reponse) {
203
					// Gestion des erreurs HTTP renvoyé par Apache ou JRest 
200
					// Gestion des erreurs HTTP renvoyé par Apache ou JRest 
204
					Information info = new Information("erreur_jrest", JSONParser.parse(reponse.getText()).isArray());
201
					Information info = new Information("erreur_jrest", JSONParser.parse(reponse.getText()).isArray());
205
					GWT.log("Erreur JREST - Code "+reponse.getStatusCode()+"\n"+info.getMessages().toString(), null);
202
					GWT.log("Erreur JREST - Code "+reponse.getStatusCode()+"\n"+info.getMessages().toString(), null);
206
					Info.display("Erreur JREST - Code "+reponse.getStatusCode(), info.toString());
203
					Info.display("Erreur JREST - Code "+reponse.getStatusCode(), info.toString());
207
				}
204
				}
208
	
205
	
209
				public void onResponseReceived(Request request, Response response) {
206
				public void onResponseReceived(Request request, Response response) {
210
					// Si le code de réponse HTTP ne vaut pas 200 OK, on lance le mécanise d'erreur HTTP
207
					// Si le code de réponse HTTP ne vaut pas 200 OK, on lance le mécanise d'erreur HTTP
211
					if (response.getStatusCode() != 200) {
208
					if (response.getStatusCode() != 200) {
212
						onErrorHTTP(request, response);
209
						onErrorHTTP(request, response);
213
					} else {
210
					} else {
214
						if (response.getText().length() != 0 && response.getText() != null) {
211
						if (response.getText().length() != 0 && response.getText() != null) {
215
							final JSONValue responseValue = JSONParser.parse(response.getText());
212
							final JSONValue responseValue = JSONParser.parse(response.getText());
216
							
213
							
217
							// Si la requête est un succès, reception d'une chaine
214
							// Si la requête est un succès, reception d'une chaine
218
							if (responseValue.isString() != null) {
215
							if (responseValue.isString() != null) {
219
								Information info = new Information("modif_structure_a_personne", responseValue.isString().stringValue());
216
								Information info = new Information("modif_structure_a_personne", responseValue.isString().stringValue());
220
								vue.rafraichir(info);
217
								vue.rafraichir(info);
221
							} else {
218
							} else {
222
								GWT.log(url+"\n\tLa réponse n'est pas une chaine JSON.", null);
219
								GWT.log(url+"\n\tLa réponse n'est pas une chaine JSON.", null);
223
							}
220
							}
224
						} else {
221
						} else {
225
							GWT.log(url, null);
222
							GWT.log(url, null);
226
							if (response.getText().length() == 0) {
223
							if (response.getText().length() == 0) {
227
								GWT.log("\tLa réponse a une taille de 0", null);
224
								GWT.log("\tLa réponse a une taille de 0", null);
228
							}
225
							}
229
							if (response.getText() == null) {
226
							if (response.getText() == null) {
230
								GWT.log("\tLa réponse vaul null", null);
227
								GWT.log("\tLa réponse vaul null", null);
231
							}
228
							}
232
						}
229
						}
233
					}
230
					}
234
				}
231
				}
235
				
232
				
236
			}) ;
233
			}) ;
237
		} catch (RequestException e) {
234
		} catch (RequestException e) {
238
			// Gestion des exceptions déclenchées par la création de la requête (url non-valide ?)
235
			// Gestion des exceptions déclenchées par la création de la requête (url non-valide ?)
239
			GWT.log("Erreur à la création du service "+SERVICE_NOM+" (modif)", e);
236
			GWT.log("Erreur à la création du service "+SERVICE_NOM+" (modif)", e);
240
			Info.display("Erreur de Requête", "Une erreur s'est produite lors de la création de la requête.");
237
			Info.display("Erreur de Requête", "Une erreur s'est produite lors de la création de la requête.");
241
		}
238
		}
242
	}
239
	}
243
	
240
	
244
	public void supprimer(final Rafraichissable vue, String utilisateurId, String idStrAPer) {
241
	public void supprimer(final Rafraichissable vue, String utilisateurId, String idStrAPer) {
245
		// Ajout des paramètres et données à supprimer dans l'URL
242
		// Ajout des paramètres et données à supprimer dans l'URL
246
		final String url = ((Configuration) Registry.get(RegistreId.CONFIG)).getServiceBaseUrl() + 
243
		final String url = ((Configuration) Registry.get(RegistreId.CONFIG)).getServiceBaseUrl() + 
247
			SERVICE_NOM + "/" +
244
			SERVICE_NOM + "/" +
248
			utilisateurId + "/" +
245
			utilisateurId + "/" +
249
			idStrAPer +
246
			idStrAPer +
250
			"";
247
			"";
251
		
248
		
252
		// DELETE n'étant pas disponible comme méthode HTTP, nous utilisons POST avec le paramètre action=DELETE
249
		// DELETE n'étant pas disponible comme méthode HTTP, nous utilisons POST avec le paramètre action=DELETE
253
		RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, url);
250
		RequestBuilder rb = new RequestBuilder(RequestBuilder.POST, url);
254
		String postDonnees = "action=DELETE";
251
		String postDonnees = "action=DELETE";
255
		
252
		
256
		try {
253
		try {
257
			rb.sendRequest(postDonnees, new RequestCallback() {
254
			rb.sendRequest(postDonnees, new RequestCallback() {
258
 
255
 
259
				public void onError(Request request, Throwable exception) {
256
				public void onError(Request request, Throwable exception) {
260
					// Gestion des exceptions déclenchées par l'exécution de la requête 
257
					// Gestion des exceptions déclenchées par l'exécution de la requête 
261
					GWT.log("Erreur à l'exécution du service "+SERVICE_NOM+" (suppression)", exception);
258
					GWT.log("Erreur à l'exécution du service "+SERVICE_NOM+" (suppression)", exception);
262
					Info.display("Erreur de Requête", "Une erreur s'est produite lors de l'exécution de la requête.");
259
					Info.display("Erreur de Requête", "Une erreur s'est produite lors de l'exécution de la requête.");
263
				}
260
				}
264
 
261
 
265
				public void onErrorHTTP(Request request, Response reponse) {
262
				public void onErrorHTTP(Request request, Response reponse) {
266
					// Gestion des erreurs HTTP renvoyé par Apache ou JRest 
263
					// Gestion des erreurs HTTP renvoyé par Apache ou JRest 
267
					Information info = new Information("erreur_jrest", JSONParser.parse(reponse.getText()).isArray());
264
					Information info = new Information("erreur_jrest", JSONParser.parse(reponse.getText()).isArray());
268
					GWT.log("Erreur JREST - Code "+reponse.getStatusCode()+"\n"+info.getMessages().toString(), null);
265
					GWT.log("Erreur JREST - Code "+reponse.getStatusCode()+"\n"+info.getMessages().toString(), null);
269
					Info.display("Erreur JREST - Code "+reponse.getStatusCode(), info.toString());
266
					Info.display("Erreur JREST - Code "+reponse.getStatusCode(), info.toString());
270
				}
267
				}
271
				
268
				
272
				public void onResponseReceived(Request request, Response response) {
269
				public void onResponseReceived(Request request, Response response) {
273
					// Si le code de réponse HTTP ne vaut pas 200 OK, on lance le mécanise d'erreur HTTP
270
					// Si le code de réponse HTTP ne vaut pas 200 OK, on lance le mécanise d'erreur HTTP
274
					if (response.getStatusCode() != 200) {
271
					if (response.getStatusCode() != 200) {
275
						onErrorHTTP(request, response);
272
						onErrorHTTP(request, response);
276
					} else {
273
					} else {
277
						if (response.getText().length() != 0 && response.getText() != null) {
274
						if (response.getText().length() != 0 && response.getText() != null) {
278
							final JSONValue responseValue = JSONParser.parse(response.getText());
275
							final JSONValue responseValue = JSONParser.parse(response.getText());
279
							
276
							
280
							// Si la requête est un succès, reception d'une chaine
277
							// Si la requête est un succès, reception d'une chaine
281
							if (responseValue.isString() != null) {
278
							if (responseValue.isString() != null) {
282
								Information info = new Information("suppression_structure_a_personne", responseValue.isString().stringValue());
279
								Information info = new Information("suppression_structure_a_personne", responseValue.isString().stringValue());
283
								vue.rafraichir(info);
280
								vue.rafraichir(info);
284
							} else {
281
							} else {
285
								GWT.log(url+"\n\tLa réponse n'est pas une chaine JSON.", null);
282
								GWT.log(url+"\n\tLa réponse n'est pas une chaine JSON.", null);
286
							}
283
							}
287
						} else {
284
						} else {
288
							GWT.log(url, null);
285
							GWT.log(url, null);
289
							if (response.getText().length() == 0) {
286
							if (response.getText().length() == 0) {
290
								GWT.log("\tLa réponse a une taille de 0", null);
287
								GWT.log("\tLa réponse a une taille de 0", null);
291
							}
288
							}
292
							if (response.getText() == null) {
289
							if (response.getText() == null) {
293
								GWT.log("\tLa réponse vaul null", null);
290
								GWT.log("\tLa réponse vaul null", null);
294
							}
291
							}
295
						}
292
						}
296
					}
293
					}
297
				}
294
				}
298
				
295
				
299
			}) ;
296
			}) ;
300
		} catch (RequestException e) {
297
		} catch (RequestException e) {
301
			// Gestion des exceptions déclenchées par la création de la requête (url non-valide ?)
298
			// Gestion des exceptions déclenchées par la création de la requête (url non-valide ?)
302
			GWT.log("Erreur à la création du service "+SERVICE_NOM+" (suppression)", e);
299
			GWT.log("Erreur à la création du service "+SERVICE_NOM+" (suppression)", e);
303
			Info.display("Erreur de Requête", "Une erreur s'est produite lors de la création de la requête.");
300
			Info.display("Erreur de Requête", "Une erreur s'est produite lors de la création de la requête.");
304
		}
301
		}
305
		
302
		
306
	}
303
	}
307
}
304
}