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é.
LE système, le sensorDTO et le sensorFamilyDTO sont non nuls.
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(); } });
J'appelle donc cette méthode updateSensor qui se trouve dans le fichier de service contenu sur le serveur.
Et cette fois, que ce soit sensorFam ou sensorDTO.getAssociatedSensorFam() que j'ai rempli précédemment dans le Presenter, est null.
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());
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.
Partager