Seguinte pessoal, estou começando a desenvolver uma aplicação java, quando tenho que usar campo numero acaba dando erro, segue as classes
menu.jsp
<%--
Document : menu
Created on : 07/04/2011, 09:13:43
Author : Daniel
--%>
<%@page import="java.sql.SQLException"%>
<%@page import="java.sql.PreparedStatement"%>
<%@page import="java.sql.Statement"%>
<%@page import="java.sql.ResultSet"%>
<%@page import="persistence.Conexao"%>
<%@page import="java.sql.Connection"%>
<%@page import="org.springframework.context.annotation.Import"%>
<%@page contentType="text/html" pageEncoding="iso-8859-1"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Cadastro de Menu</title>
<script type="text/javascript">
var request = false;
try {
request = new XMLHttpRequest();
} catch (trymicrosoft) {
try {
request = new ActiveXObject("Msxml2.XMLHTTP");
} catch (othermicrosoft) {
try {
request = new ActiveXObject("Microsoft.XMLHTTP");
} catch (failed) {
request = false;
}
}
}
if (!request)
alert("Error initializing XMLHttpRequest!");
function getSistema(COD) {
var url = "<% out.print(request.getRequestURL().substring(0, request.getRequestURL().lastIndexOf("d/") + 1));%>/consultas/consultaSistema.jsp?SIS="+COD;
request.open("GET", url, true);
request.onreadystatechange = updatePage;
request.send(null);
}
function updatePage() {
if (request.readyState == 4) {
if (request.status == 200) {
var conteudo = "";
var response = request.responseText.split("|");
for(i=0; i < response.length; i++) {
conteudo += response[i] + "\n";
}
document.getElementById("descSis").value = conteudo;
} else
alert("status is " + request.status);
}
}
</script>
</head>
<body>
<h1>Cadastro de Menu</h1>
<%
if (request.getAttribute("Salvo") != null) {
out.print(request.getAttribute("Salvo"));
}
Connection conn = Conexao.getInstance().getConnection();
int n = 0;
try {
String sql = "SELECT max(codigo) FROM MENU";
PreparedStatement sta = conn.prepareStatement(sql);
ResultSet rs = sta.executeQuery();
sta = conn.prepareStatement(sql);
while (rs.next()) {
n = rs.getInt(1) + 1;
}
} catch (SQLException e) {
out.println("Erro " + e.getMessage());
}
%>
<form action="../sMenu" method="post" enctype="multipart/form-data">
Código
<input type="text" name="codigo" id="codigo" value="<% out.print(n);%>" size="10"> <br />
Sistema
<input type="text" name="sistema" id="sistema" size="10" onblur="getSistema(this.value);"> <input type="text" name="descSis" id="descSis" disabled > <br />
Descrição:
<input type="text" name="descricao" size="40"> <br />
<input type="submit" name="enviar" value="enviar">
</form>
</body>
</html>
sMenu.java
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package servlet.admin;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import model.Menu;
import persistence.MenuDAO;
/**
*
* @author Daniel
*/
public class sMenu extends HttpServlet {
//Connection conn = Conexao.getInstance().getConnection();
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String codigo = String.valueOf(request.getParameter("codigo"));
String sistema = String.valueOf(request.getParameter("sistema"));
Menu men = new Menu();
men.setCodigo(Integer.parseInt(codigo));
men.setSistema(Integer.parseInt(sistema));
men.setDescricao(String.valueOf(request.getParameter("descricao")));
MenuDAO menDAO = new MenuDAO();
if (menDAO.salvar(men)) {
request.setAttribute("Salvo", "Salvo com Sucesso <br />");
request.getRequestDispatcher("/admin/menu.jsp").forward(request, response);
} else {
request.setAttribute("Salvo", "Erro ao Salvar <br />");
request.getRequestDispatcher("/admin/menu.jsp").forward(request, response);
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}
e o bendito erro
HTTP Status 500 -
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
java.lang.NumberFormatException: For input string: "null"
java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
java.lang.Integer.parseInt(Integer.java:449)
java.lang.Integer.parseInt(Integer.java:499)
servlet.admin.sMenu.doGet(sMenu.java:27)
servlet.admin.sMenu.doPost(sMenu.java:44)
javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.26 logs.
Apache Tomcat/6.0.26
Se alguém puder ajudar…