Program nie wyświetla wyniku operacji dodawania na dwóch liczbach - JavaWeb/Servlety

0

Witam,

tworzę aplikację typu JavaWeb, która ma wykonywać operacje arytmetyczne na liczbach. 
Użytkownik za pomocą obiektu radio wybiera jaką operację chce wykonać (jak na razie tylko suma), następnie w polu tekstowym text1 i text2 podaje liczby które chce dodać. Klika przycisk wykonaj i servlet o nazwie NewServlet powinien wykonać działanie i wyświetlić wynik. Na razie powinna działać tylko suma (dodawanie). Niestety źle podaje wynik bo pokazuje ciągle 0. Nie mogę dojść co jest nie tak, albo czego brakuje. Proszę o pomoc. W załączniku dodałem zapakowany program.

Pierwsza strona o nazwie: arytmetyka.html

<html>
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        
        <link href="style.css" rel="stylesheet" type="text/css" />
        
        <title>Arytmetyka</title>
        

        
    <body>
        	<div class="header">
                    
				Arytmetyka    
              
		</div>

        <div class="menu">
			<ol>
				<li><a href="index.html">Strona główna</a></li>
				<li><a href="arytmetyka.html">Arytmetyka</a>
                                <li><a href="baza_danych.html">Baza danych</a>
			</ol>
		
		</div>   

        <form action="NewServlet">
            <p>Podaj pierwszą liczbę: <input type="text" name="text1"></p>
            <p>Podaj drugą liczbę: <input type="text" name="text2"></p>
            <input type="radio" name="operacja" value="roznica"/>Różnica<br/>
            <input type="radio" name="operacja" value="suma"/>Suma<br/>
            <input type="radio" name="operacja" value="iloczyn"/>Iloczyn<br/>
            <p><input type="submit" name="odejmowanie" value="Wykonaj"></p>
        </form>

    </body>
</html>
**Druga strona o nazwie: NewServlet.java
**
    private double operacja(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        double wynik=0;
         String op = request.getParameter("operacja");
         double l1 =Double.parseDouble(request.getParameter("text1"));
         double l2 = Double.parseDouble(request.getParameter("text2"));
         if (op.equalsIgnoreCase("suma")){
             wynik=l1+l2;
         }
        return wynik; 
    }
    
    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
       double w=0; 
        try (PrintWriter out = response.getWriter()) {
            /* TODO output your page here. You may use following sample code. */
            out.println("<!DOCTYPE html>");
            out.println("<html>");
            out.println("<head>");
            out.println("<title>Wynik</title>");            
            out.println("</head>");
            out.println("<body>");
            out.println("<h1>Servlet NewServlet at " + request.getContextPath() + "</h1>");
            out.println("<div>Wynik: "+w+"</div");
            out.println("</body>");
            out.println("</html>");
        }
0

Cały czas masz przypisanie "double w=0", dlatego masz 0 na wyjściu.

0

Można "poprawić" jedną linię

double w = operacja(request, response);

1 użytkowników online, w tym zalogowanych: 0, gości: 1