Afficher un message d'alerte quand une violation de contrainte ce produit

Fermé
nawfelbougrine Messages postés 11 Date d'inscription mardi 8 octobre 2019 Statut Membre Dernière intervention 23 mai 2020 - 11 oct. 2019 à 20:23
Bonjour,

je vous montre mon interface pour que vous compreniez mieux :


J'ai ajouter une contrainte unique sur 2 colonnes (nom_locaux et numero_place) tout marche à la perfection, il ya juste un petit problème que je veux r'ajouter un nom de local avec un numéro de place qui existe déjà il me ramène dans une page blanche comme ceci :


et il m'affiche l'erreur sur netbeans comme quoi j'ai violé la contrainte... alors que moi j'aimerais qu'il ne me redirige pas vers la page blanche mais qu'il reste sur la meme page et qu'il m'affiche un message de type " Erreur vous avez entrez deux locaux ayant le meme numéro de place et le meme nom de local"

j'ai esseyé un petit code javascript et ajax mais ça ne marche pas voici le code que j'ai ajouté dans ma servlet jee :


if("ajouter".equals(action)){
PreparedStatement st1=c.prepareStatement("insert into place values (null,?,?,?,?)");
st1.setString(1, nom_local);
st1.setInt(2, Integer.parseInt(numeroplace));
st1.setString(3, prixplace);
st1.setString(4, tailleplace);
int resadd=st1.executeUpdate();
if (resadd>0){
request.setAttribute("msg", "place ajouté avec succés !");

}
else {
request.setAttribute("msg", "place non ajouté !");
throw new Exception("Erreur vous avez entrez deux locaux ayant le meme numéro de place et le meme nom de local" );
}
getServletContext().getRequestDispatcher("/WEB-INF/Place_locaux.jsp").forward(request, response);
}


et voici le code javascript :


<script>

jQuery.ajax({
type: POST,
url: Place_locaux.java,
success: function (response) {
//Code en cas de succès de l'appel
},
error: function (xhr, ajaxOptions, thrownError) {
alert(chr.responseText); //Ce code affichera le message d'erreur.
}
});
</script>

j'espère que j'ai été clair et j'attends votre réponse avec impatience, et je tiens à vous remerciez de votre réponse d'avance


Configuration: Windows / Chrome 77.0.3865.90