Boa tarde galera,
to precisando de uma ajuda… tenho está calculadora abaixa em java web.
Não estou conseguindo retornar o valor inteiro para a jsp.
podem me dizer como faço isso?
obrigado.
Pagina da servlet…
[code]/*
- To change this template, choose Tools | Templates
- and open the template in the editor.
*/
package controle;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.SQLException;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import modelo.vo_calculadora;
@WebServlet(name = “sv_calculadora”, urlPatterns = {"/sv_calculadora"})
public class sv_calculadora extends HttpServlet {
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException, SQLException {
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
//HttpSession sessao = request.getSession(true);
String opcao = request.getParameter("act");
vo_calculadora obj_calc_vo = new vo_calculadora();
// dao_calculadora obj_calc_dao = new dao_calculadora();
String num1 = request.getParameter("n1");
String num2 = request.getParameter("n2");
//String resultado = request.getParameter("");
int result;
if (opcao.equals("soma")) {
int n1 = Integer.parseInt(num1);
int n2 = Integer.parseInt(num2);
//int result = Integer.parseInt(resultado);
obj_calc_vo.setValor1(n1);
obj_calc_vo.setValor2(n2);
result = n1 + n2;
// out.println(result);
request.setAttribute("result", result);
RequestDispatcher rd = request.getRequestDispatcher("index.jsp");
rd.forward(request, response);
}
}
// <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
/**
* Handles the HTTP <code>GET</code> method.
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
try {
processRequest(request, response);
} catch (SQLException ex) {
Logger.getLogger(sv_calculadora.class.getName()).log(Level.SEVERE, null, ex);
}
}
/**
* Handles the HTTP <code>POST</code> method.
* @param request servlet request
* @param response servlet response
* @throws ServletException if a servlet-specific error occurs
* @throws IOException if an I/O error occurs
*/
@Override
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
try {
processRequest(request, response);
} catch (SQLException ex) {
Logger.getLogger(sv_calculadora.class.getName()).log(Level.SEVERE, null, ex);
}
}
/**
* Returns a short description of the servlet.
* @return a String containing servlet description
*/
@Override
public String getServletInfo() {
return "Short description";
}// </editor-fold>
}
pagina da jsp
[/code]
<%@page import=“javax.naming.spi.DirStateFactory.Result”%>
<%@page import=“modelo.vo_calculadora”%>
<%@page import=“java.util.List”%>
<%@taglib prefix=“sql” uri=“http://java.sun.com/jsp/jstl/sql”%>
<%@page contentType=“text/html” pageEncoding=“ISO-8859-1”%>
<form action="/calculadora/sv_calculadora" method="post">
<p>1° Número:
<input type="text" name="n1"></p>
<p>2° Número:
<input type="text" name="n2"></p>
<p>
<input type="radio" name="act" value="soma"> Soma<br>
<input type="radio" name="act" value="subtrai"> Subtração<br>
<input type="radio" name="act" value="divide"> Divisão<br>
<input type="radio" name="act" value="multiplica"> Multiplicação<br>
</p>
<p><input type="submit" value="calcular"></p>
<h3>Resultado: </h3>
<%
//String num2 = request.getParameter("result");
//int n1 = Integer.parseInt(num1);
String result = (String) request.getParameter("result");
int resultado = Integer.parseInt(result);
System.out.print(resultado); //if (session.getAttribute("obj_calc_vo") != null) {
//vo_calculadora obj_calc_vo = (vo_calculadora) session.getAttribute("obj_calc_vo");
%>
</form>
Erro que esta dando
HTTP Status 500 -
type Exception report
message
descriptionThe server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: java.lang.NumberFormatException: null
root cause
java.lang.NumberFormatException: null
note The full stack traces of the exception and its root causes are available in the GlassFish Server Open Source Edition 3.0.1 logs.
GlassFish Server Open Source Edition 3.0.1