Bonjour,
J'ai un service web qui enregistre en base de données.
Je voudrait remonté l'exception déclenché lors d'un enregistrement en base de données jusqu'au contrôleur pour remonter un code http 409 au client.
Or comme j'ai fait actuellement, sa me provoque une erreur 500:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 public Integer creerProjet(Projet projet) throws SQLException { int identifiant ; entityManagerFactory.persist(projet); identifiant = (Integer) entityManagerFactory.createQuery("SELECT identifiant FROM Projet WHERE identifiant = (SELECT MAX(identifiant) FROM Projet)", Integer.class).getSingleResult(); return identifiant; }
Je vois pas ce qui cloche.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 public ResponseEntity<String> enregistrerUtilisateur(@RequestBody Projet projet){ try { return ResponseEntity.status(HttpStatus.CREATED).body(projetService.creerProjet(projet).toString()); } catch (SQLException e) { return ResponseEntity.status(HttpStatus.CONFLICT).body("Message erreur !"); } }
Entre le DAO et le contrôleur j'ai une classe service
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 public Integer creerProjet(Projet projet) throws SQLException { int identifiant = projetDao.creerProjet(projet); return identifiant; }
Partager