Erro 500 org.apache.jasper.JasperException: An exception occurred processing JSP page

7 respostas
J

Boa tarde galera.

Estou criando uma aplicação, só que quando eu vou emitir o relatório dos produtos
cadastrados da erro 500.Estou utilizando um “gravar.jsp” para amazenar no Vector e depois
salvar da session, para eu resgatar quando quiser fazr relatorio. Mas não sai desse erro… :shock:

relatorio.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@page import="java.util.Vector"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<% 

Vector dados =(Vector)session.getAttribute("cadastros");
if(dados == null) new Vector();
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Relatorio Produtos</title>
</head>
<body>
<h2 align="center">Relatorio de Produtos Cadastrados</h2>
<%
for(int i = 0; i < dados.size(); i++)
out.println(dados.get(i));
%>
</body>
</html>

gravar.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    <%@ page import="java.util.*,web.wer.com.br.Produto" %>
    <%@page errorPage="erro.jsp" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<%
Vector dados = (Vector)session.getAttribute("cadastros");
if(dados == null) dados = new Vector();
Produto prod = new Produto();
prod.setNome(request.getParameter("nome"));
prod.setCodigo(Integer.parseInt(request.getParameter("codigo")));
prod.setValor(Double.parseDouble(request.getParameter("valor")));
dados.add(prod);
session.setAttribute("cadastros	", dados);
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Gravando Produto</title>
</head>
<body>
<h2 align="center">Gravado Com Sucesso!</h2>
<table align="center">
<tr>
<td><input type="button" value="Voltar" onclick="document.location='index.jsp'"></td>
<td><input type="button" value="Relatorio" onclick="document.location='relatorio.jsp'"></td>
</tr>
</table>
</body>
</html>

index.jsp

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@page import="web.wer.com.br.Produto" %>
<!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=UTF-8">
<title>Coleção de JavaBens</title>
</head>
<body>
<h2 align="center">Cadastro de Produto</h2><br>
<form action="gravar.jsp" method="post">
<table align="center">
<tr>
<td>Nome:</td>
<td><input type="text" name="nome" size="30"></td>
</tr>
<tr>
<td>Codigo:</td>
<td><input type="text" name="codigo" size="3"></td>
</tr>
<tr>
<td>Valor:</td>
<td><input type="text" name="valor" size="6"></td>
</tr>
<tr>
<td><input type="submit" value="Gravar"></td>
<td><input type="button" value="Relatorio" onclick="document.location='relatorio.jsp'"></td>
<td></td>
</tr>
</table>
</form>
</body>
</html>

Erro:

HTTP Status 500 -

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: An exception occurred processing JSP page /relatorio.jsp at line 19

16: <h2 align="center">Relatorio de Produtos Cadastrados</h2>
17: <%
18: 
19: for(int i = 0; i < dados.size(); i++)  
20: out.println(dados.get(i));  
21: %>
22: </body>


Stacktrace:
	org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:521)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:430)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
root cause

java.lang.NullPointerException
	org.apache.jsp.relatorio_jsp._jspService(relatorio_jsp.java:72)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.33 logs.

Apache Tomcat/6.0.33

7 Respostas

H

Sua lista (collection) “dados” está null.

J

Se foi o que entendi, o Meu Vector está null, mas eu cadastro produtos e funciona
normalmente … e o erro fica reclamando do meu for () … Que isso eu não entendi nada =/
Como poderia resolver esse erro ? Então o problema é que não está sendo gravado corretamente?
Adicionei um produto no meu Vector e nada =/

HTTP Status 500 -

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: An exception occurred processing JSP page /relatorio.jsp at line 14

11: produto.setCodigo(1);
12: produto.setNome("Pasta de Dente");
13: produto.setValor(20);
14: dados.add(produto);
15: %>
16: <html>
17: <head>


Stacktrace:
	org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:521)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:430)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
root cause

java.lang.NullPointerException
	org.apache.jsp.relatorio_jsp._jspService(relatorio_jsp.java:68)
	org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:388)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.33 logs.

Apache Tomcat/6.0.33
H

Novamente, deu o erro pq o dados está vindo null…

Se vc reparar, lá em cima já deve estar null:
Vector dados =(Vector)session.getAttribute(“cadastros”);

Verifique onde vc coloca o cadastros na sessão.

J

Vc tem razão, verifiquei aqui e está vindo null mesmo,

estranho que no meu arquivo gravar.jsp acho que está tudo correto

Será que ele ta entendendo que é outra sessão do usuário ?

gravar.jsp

<%  
Vector dados = (Vector)session.getAttribute("cadastros");  
if(dados == null) dados = new Vector();  
Produto prod = new Produto();  
prod.setNome(request.getParameter("nome"));  
prod.setCodigo(Integer.parseInt(request.getParameter("codigo")));  
prod.setValor(Double.parseDouble(request.getParameter("valor")));  
dados.add(prod);  
session.setAttribute("cadastros ", dados);  
%>
J

:lol: kkkkkkkkkkkk Encontrei meu grande erro putz, vou me matar rsrsrs

session.setAttribute("cadastros ", dados);   // Olha o espaço do cadastros ...

Poxa tava buscando outro objeto rsrsrsrs por causa de um espaço esse transtorno todo kkkkk vlw amigo Brigado …

H

Sempre tenha em mente, se ta dando erro é pq tem alguma coisa errada! =P Pode funcionar em todo lugar, mas se deu erro… ta faltando algo.

Verifique na hora que vc chama essa tela. Se o código que cria essa lista e coloca na sessão está sendo chamado.

J

Brigado pela dica … 8)

Criado 5 de janeiro de 2012
Ultima resposta 5 de jan. de 2012
Respostas 7
Participantes 2