não entendo o erro que da o equals!

4 respostas
I

bom, estou fazendo algumas aplicações básicas aqui, para treinar java e estou com uma dificuldade vou postar o meu código e o erro …[quote]

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

75: 		
76: 		String param = request.getParameter( "acao" );	
77: 		String parametro = "excluir";
78: 		if( param.equals(parametro) )
79: 		{
80: 			out.println( "ola" );
81: 		}


Stacktrace:
	org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:505)
	org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:416)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)


root cause 

java.lang.NullPointerException
	org.apache.jsp.usuario_jsp._jspService(usuario_jsp.java:132)
	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:374)
	org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
	org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
<%@ page contentType="text/html; charset=utf-8" language="java" import="java.sql.*" errorPage="" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<style type="text/css">
<!--
.titulo {
	color: #F00;
	font-size: 36px;
	font-family: Verdana, Geneva, sans-serif;
}
a {
	font-family: Verdana, Geneva, sans-serif;
	position: relative;
	height:30px;
	padding:3px;
	border: thin dotted #666;
	margin: 10px;
	margin-bottom:50px;
	background-color:#9C9;

}

a:link {
	text-decoration:none;
}

a:visited{
	text-decoration:none;
}

a:hover {
	text-decoration:none;
	background-color:#0FF;
}

a:active {
	text-decoration:none;
}
td
{
	text-align:center;
}


-->
</style>
</head>

<body>

<p class="titulo">Manutenção de usuários</p>

    <a href="#"><img src="imagens/salvar.png" alt="Cadastrar novo usuário" width="24" height="24" />Cadastrar novo usuário</a>
    <a href="#">Crescente</a>
    <a href="#">Decrescente</a>

<table width="817" height="83" border="1">
  <tr align="center">
    <th width="146" scope="row">Código</th>
    <th width="115">Nome do usuário</td>
    <th width="114">Senha</td>
    <th width="151">Nível de acesso</td>
    <th width="93">Alterar</td>
    <th width="158">Excluir</th>
  </tr>
  <%	
	try
	{
		//1º carregar o driver
		Class.forName( "net.sourceforge.jtds.jdbc.Driver" );
		Connection con = DriverManager.getConnection( "jdbc:jtds:sqlserver://fenix:1433/TBAULANERI;user=aitiowmv;password=97015724" );
		
*               String param = request.getParameter( "acao" );	
*		String parametro = "excluir";
*		if( param.equals(parametro) )
*		{
*			out.println( "ola" );
*		}
*		
*		String sql = "SELECT * FROM LOGIN";
				
		PreparedStatement stm = con.prepareStatement( sql );[/b][i]
		
		ResultSet rs = stm.executeQuery();
		
		while( rs.next() )
		{
		  %>
		  <tr>
        	<td><%=rs.getString("LOG_CODIGO")%></td>
			<td><%=rs.getString("LOG_USUARIO")%></td>
			<td><%=rs.getString("LOG_SENHA")%></td>
			<td><%=rs.getString("LOG_NIVELDEACESSO")%></td>                
			<td align="center"><img src="imagens/alterar.gif" alt="Alterar"/></td>
			<td align="center"><a href="usuario.jsp?acao=excluir&codigo=<%=rs.getString("LOG_CODIGO")%>"><img src="imagens/remover.gif" alt="Alterar"/></a></td>
		  </tr>
			<%
		}

			
		con.close();
		
	}
	catch( ClassNotFoundException erroClass )
	{
		out.println( "Classe Driver JDBC não foi localizado, erro =  " + erroClass );
	}
	catch( SQLException erroSQL )
	{
		out.println( "Erro de conexão com o banco de dados, erro = " + erroSQL );
	}	
%>


</table>
<p>&nbsp;</p>
</body>
</html>

bom é bem na parte destacada (usei asteriscos pq nao consegui destacar com cores)que da o erro. quando eu tiro o if com param.equals() o código funfa, mas quando eu coloco essa condicao ele da essa excessão
nao entendo… o que pode estar acontecendo?

Obrigado desde ja…

4 Respostas

wariows

NullPointerException, esse é o erro que está dando… Esse erro quer dizer que vc tentou acessar um método ou atributo em um objeto nulo, o que não é permitido…

O motivo de vc está tendo este erro, é pq o param em:

String param = request.getParameter( “acao” );

está nulo (null)… ou seja, vc não está passando esse parametro ‘acao’ na request…

[]'s

wariows

Se você quer apenas verificar quando ‘acao’ for igual a “excluir” e não levar mais nada em consideração, inverta o if, faça assim:

if ( parametro.equals(param) ) ao invés de if (param.equals(parametro)), assim vc não terá NullPointerException…

I

PUTS…entendi mariows

cara… não acredito… eu tava fazendo param.equals(parametro) so que como param da primeira vez é nulo, quer dizer que ele não tem o método equals… e por isso que dava pau… aff
MUITO OBRIGADO WARIOWS… vou testar novamente… obrigado mesmo…
foi questão de detalhe…

OBRIGADO
!!!

I

acabei de testar… era isso mesmo
muito obrigado

era isso mesmo…

obrigadooo

Criado 29 de dezembro de 2009
Ultima resposta 30 de dez. de 2009
Respostas 4
Participantes 2