Bonjour,

Pour m'initier à J2EE, je suis en train d'essayer de réaliser une petite calculatrice :
On propose à l'utilisateur un formulaire permettant de saisir 2 opérandes, une liste déroulante qui contient les 4 opérateurs et un bouton Submit.
Le but est tout simplement d'afficher le résultat de l'opération.

J'ai commencé par créer une classe Opération que voici (j'ai enlevé les accesseurs) :

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
package com.occalculatrice.beans;
 
public class Operation {
 
	private String operande1;
	private String operateur;
	private String operande2;
	private String resultat;
 
	public Operation() { }
 
	public Operation (String operande1, String operateur, String operande2) {
		this.operande1 = operande1;
		this.operateur = operateur;
		this.operande2 = operande2;
 
		int op1 = Integer.parseInt(this.operande1);
		int op2 = Integer.parseInt(this.operande2);
		int res;
 
		if (this.operateur.equals("+")) {
			res = op1 + op2;
		}
		else if (this.operateur.equals("-")) {
			res = op1 - op2;
		}
		else if (this.operateur.equals("x")) {
			res = op1 * op2;
		}
		else res = op1 / op2;
 
		this.resultat = Integer.toString(res);
	}	
}

Voici les méthodes doGet() et doPost() de ma servlet :

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
 
	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 {
		Operation operation = new Operation(
			request.getParameter("operande1"),
		        request.getParameter("operateur"),
		        request.getParameter("operande2"));
 
		request.setAttribute("operation", operation);
	}

Et le code de ma JSP qui contient le formulaire et sur laquelle j'aimerai afficher le résultat à l'aide de Expression Language.

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
<%@ page pageEncoding="UTF-8" %>
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title>Calculatrice</title>
	</head>
	<body>
		<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> 
			${ operation.operande1 } ${ operation.operateur } ${ operation.operande2 } = ${ operation.resultat }
		</p>
	</body>
</html>
Malheureusement pour le moment, quand j'appuie sur le bouton Submit, j'atteris sur une page blanche (qui a pourtant la même URL que la page ou se trouve le formulaire). Pouvez vous me dire pourquoi ?
Et existe-il un moyen plus proche pour afficher le résultat de l'opération saisit dans le formulaire?

Merci.