Bonjour,

Je réalise un logiciel en Java et GWT.
Suite au remplissage d'un formulaire par l'utilisateur, celui-ci appuie sur le bouton "enregistrer" pour enregistrer les données mais cet enregistrement échoue.
En effet, je fais appel à plusieurs DTO qui sont non NULL avant l'appel de la méthode de mise à jour: je l'ai vérifié.
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
systemService.updateSensor(DataCacheService.getInstance()
 
				.getActiveSystem(), sensor,sensor.getAssociatedSensorFam(), new AsyncCallback<Void>() {
 
			@Override
			public void onSuccess(Void result) {
				eventBus.closeDialog();
			}
 
			@Override
			public void onFailure(Throwable caught) {
				Toast.makeText(String.valueOf(sensor.getAssociatedSensorFam().getId()), Toast.Length.LONG)
						.show();
			}
		});
LE système, le sensorDTO et le sensorFamilyDTO sont non nuls.
J'appelle donc cette méthode updateSensor qui se trouve dans le fichier de service contenu sur le serveur.
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
29
30
31
@Override
	public void updateSensor(SystemDTO system, SensorDTO sensorDTO, SensorFamilyDTO sensorFamDTO) {
 
		Sensor sensor = null;
		SensorFamily sensorFam = null;
 
		if(sensorDTO.getId() <0) {
			sensor = new Sensor();
			sensor.fillFromDTO(sensorDTO);
			sensor.create();
		}
		else {
			sensor = Sensor.queryById(sensorDTO.getId());
			sensor.fillFromDTO(sensorDTO);
			sensor.update();
		}
 
		SystemSensorLink link = SystemSensorLink.queryByIds(sensor.getId(), system.getId());
		if(link == null) {
			link = new SystemSensorLink();
			link.setSensorId(sensor.getId());
			link.setSystemId(system.getId());
			link.create();
		}
		else {
			link.setSensorId(sensor.getId());
			link.setSystemId(system.getId());
			link.update();
		}
		// sensorDTO est non null par contre sensorDTO.getAssociatedSensorFam est null
		sensorFam = SensorFamily.queryById(sensorDTO.getAssociatedSensorFam().getId());
Et cette fois, que ce soit sensorFam ou sensorDTO.getAssociatedSensorFam() que j'ai rempli précédemment dans le Presenter, est null.
Je n'arrive pas à comprendre comment d'un paramètre non null, je passe à un paramètre null. A quoi cela pourrait-il être dû?
Si vous avez besoin d'informations supplémentaires pour comprendre le problème, je vous les donnerais.
Merci encore pour votre aide.