Servlet y formulario html para calculadora

Quiero hacer una calculadora que básicamente agregue, reste, multiplique y divida dos números. Para lograr esto, primero he diseñado un formulario en HTML y tengo ganas de calcular la respuesta en el servidor, así que he escrito un código en el servlet, pero cuando presiono el botón de enviar de mi formulario no hará nada. Nota: estoy trabajando en eclipse, por lo que se te solicita que respondas mi pregunta con respecto a Eclipse. Calculator.java:

package mypackage; import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class Calculator extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { try { response.setContentType("text/html"); PrintWriter out= response.getWriter(); int a1= Integer.parseInt(request.getParameter("n1")); int a2= Integer.parseInt(request.getParameter("n2")); if(request.getParameter("r1")!=null) { out.println("

Addition

"+(a1+a2)); } if(request.getParameter("r2")!=null) { out.println("

Substraction

"+(a1-a2)); } if(request.getParameter("r3")!=null) { out.println("

Multiplication

"+(a1*a2)); }if(request.getParameter("r1")!=null) { out.println("

Division

"+(a1/a2)); } } catch(Exception e) { } } }

index.html

     Calculator   

Calculator



subtraction
multiplication
division

web.xml:

   Servlet  Servlet mypackage.Calculator   Servlet /firstHomePage   index.html   

Has escrito url-pattern ‘firstHomePage’ en web.xml para servlet name Calculator

   Servlet /firstHomePage  

de modo que lo que debe escribir en forma acción es decir

  

(no escribes / en acción de formulario)

lo que escriba dentro de la acción de formulario se verifica en el patrón url de todas las asignaciones de servlets cuando se encuentra una coincidencia, se busca el nombre de servlet respectivo y la clase de servlet correspondiente. Asi es como funciona.

Espero que tengas tu respuesta 🙂

ACTUALIZACIÓN: escribir

   

NO BOTÓN de lo contrario su formulario no se enviará. Si está utilizando el button , tendrá que escribir algunos javascript.