Bonsoir a tous et merci d'avance.

je suis dans l'impasse depuis plusieurs jour, je début dans la programmation et encore loin de maîtriser.

je réalise actuellement le TP du cour sur java EE

J'ai déjà réaliser me semble t'il 90% du projet mais je me retrouve bloquer a l'envoi de ma variable message sur calculatrice.jsp .

Pour mon servlet j'ai fais ceci:

package com.octest.servlets;

Code Java : 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
32
33
34
35
36
37
package com.octest.servlets;
 
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
 
 
@WebServlet("/CalcServlet")
public class CalcServlet extends HttpServlet {
    private static final long serialVersionUID = 1L;
 
 
    public CalcServlet() {
        super();
 
    }
 
 
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        this.getServletContext().getRequestDispatcher("/WEB-INF/calculatrice.jsp").forward(request, response); 
    }
 
 
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
                Calcul calcul = new Calcul(
                Integer.parseInt(request.getParameter("operande1")),
                request.getParameter("operateur"),
                Integer.parseInt(request.getParameter("operande2")));
 
        request.setAttribute("calcul", calcul);
        this.getServletContext().getRequestDispatcher("/WEB-INF/calculatrice.jsp").forward(request, response);
    }
 
}

Ensuite Pour ma .JSP

Code JSP : 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
32
33
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
 
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>Calculatrice</title>
    </head>
    <body>
 
 
        <p>
             $[calcul.message]
        </p>
 
        <form method="post" action="">
            <input name ="operande1" type="number" size=3/>
            <select name="operateur" size="1">
                <option value="+">+</option>
                <option value="-">-</option>
                <option value="x">x</option>
                <option value="/">/</option>
            </select>
            <input name ="operande2" type="number" size=3/>
            <input type="submit" value="=" />
        </form>
        <p>
 
        </p>
    </body>
</html>

J'ai aussi à réaliser un classe pour exécuter les calculs et l'affichage de la réponse.

Code Java : 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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
package com.octest.servlets;
 
public class Calcul {
 
     int operande1 = 0;
     int operande2 = 0;
     int resultat;
     String operateur;
     String message;
     String message1;
     String message2;
 
    {
 
    if ( (operande1 == 0) && (operande2 == 0) ) {
        message1 = ("Veillez entrez une valeur");
        message = new String(message1); 
    }
    else {
         message2 = ("Bonjour, vous avez calculé" +  operande1 + operateur +  operande2 + " = "  + resultat);
 
         message = new String(message2); 
         }
    }
 
    public Calcul (int operande1, String operateur, int operande2) {
        this.operande1 = operande1;
        this.operateur = operateur;
        this.operande2 = operande2;
 
        if (this.operateur.equals("+")) {
            this.setResultat(this.operande1 + this.operande2);
        }
        else if (this.operateur.equals("-")) {
            this.setResultat(this.operande1 - this.operande2);
        }
        else if (this.operateur.equals("x")) {
            this.setResultat(this.operande1 * this.operande2);
        }
        else this.setResultat(this.operande1 / this.operande2);
    }
 
    public int getResultat() {
        return resultat;
    }
    public String getMessage() {
        return message;
        }
 
    public void setResultat(int resultat) {
        this.resultat = resultat;
    }
    public void setMessage(String message) {
        this.message = message;
    }
}

C'est sur cette page qu’apparaît m'as seul erreur qui me dis "The value of the local variable is not used."

Je vous joint aussi mon index.html et mon web.xml car je ne suis toujours pas sur de moi et il est possible que le problème vienne de la

index.html

Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title>Calculatrice</title>
    </head>
 
    <body>
 
    </body>
</html>
Ainsi que mon web.xml

Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
  <servlet>
    <servlet-name>CalcServlet</servlet-name>
    <servlet-class>com.octest.servlets.CalcServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>CalcServlet</servlet-name>
    <url-pattern>/</url-pattern>
  </servlet-mapping>
</web-app>

Et pour finir une capture d’écran de la hiérarchie de mes dossier ainsi que l’aperçu de la compilation du programe et les erreurs.

Nom : menu.PNG
Affichages : 2888
Taille : 13,8 Ko
Nom : HTML.PNG
Affichages : 2877
Taille : 7,1 Ko
Nom : ERREUR2.PNG
Affichages : 2867
Taille : 29,4 Ko

Comme vous pouvez le remarquer ma variable message n'est pas envoyer a la jsp , lorsque je revois des information dans mes formulaire la page ce réactualise sans modification par contre , lorsque j'envoi sans information l'erreur suivante sur mon Servlet CalcServlet ligne 29 revienne et m'indique que les information ne communique pas entre les différents page enfin je dis ça mais as mon niveau de novice c'est comme si je disais rien mdr.
Y a t'il une facon d'inclure la classe dans la ?
Bref comme vous l’aurait compris cela dépasse un peux mes compétence pour le moment et je suis sur presque sur que l'erreur vas me sauter au yeux une fois le doigt dessus.
je vous remercie encore pour votre attention et vous souhaite une bonne continuation dans l'attente d'une solution.