Erro no if!?

Ola galera sou novato aqui no portaljava, pretendo ajudar e ser ajudado!!!
Estou com um problema com um teste que compara string para fazer um validação em um formulario simples:
Exemplo retirado(Aplicação em JSP e Javabeans utilizando Banco de Dados)do javafree.org

cadastrar.jsp

[code]<%@ page contentType="text/html" language="java" import="java.sql.*"%>
<jsp:useBean id="con" class="conexao.Conexao"/>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Cadastrar</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<br>
<form name="form1" method="post" action="pessoa.jsp">

<p align="center"><strong>Tabela Pessoa </strong></p>
<table align="center" border=1 cellspacing=0 cellpadding=0 >

<tr>
<td width=200><strong>
Nome
</strong></td>
<td width=50><strong>
Idade
</strong></td>
<td width=30><strong>
Sexo
</strong></td>
</tr>

<%
try {

  con.setNome&#40;request.getParameter&#40;&quot;nomeField&quot;&#41;&#41;;
  con.setIdade&#40;Integer.parseInt&#40;request.getParameter&#40;&quot;idadeField&quot;&#41;&#41;&#41;;
  con.setSexo&#40;request.getParameter&#40;&quot;sexoField&quot;&#41;&#41;;
  con.inserirDados&#40;&#41;;
           
  con.setConsulta&#40;&#41;;
  ResultSet temp = con.getResultado&#40;&#41;;
  temp.next&#40;&#41;;
  
  if&#40;request.getParameter&#40;&quot;nomeField&quot;&#41;.equals&#40;temp.getString&#40;&quot;nome&quot;&#41;&#41;&#41;
     response.sendRedirect&#40;&quot;http&#58;//localhost&#58;8080/Form/pessoa.jsp?status=Registro já existente&quot;&#41;;
  
  do&#123;
  %&gt;
  &lt;tr&gt;
      &lt;td width=200&gt;
           &lt;%out.print&#40;temp.getString&#40;&quot;nome&quot;&#41;&#41;;%&gt;
     &lt;/td&gt;
      &lt;td width=50&gt;
           &lt;%out.print&#40;temp.getString&#40;&quot;idade&quot;&#41;&#41;;%&gt;
     &lt;/td&gt;
      &lt;td width=30&gt;
           &lt;%out.print&#40;temp.getString&#40;&quot;sexo&quot;&#41;&#41;;%&gt;
     &lt;/td&gt;
  &lt;/tr&gt;
  &lt;%&#125;while &#40;temp.next&#40;&#41;&#41;;

}catch (Exception e) {
e.printStackTrace();
}

%>
</table>
<p align="center">
<input type="submit" name="Submit" value="voltar">
</p>
<p align="center"><strong>Status:
<input name="statusField" disabled type="text" id="statusField" size="36" value="<%=request.getParameter("nomeField")%> foi cadastrado com sucesso">
</strong></p>
</form>
</body>
</html>
[/code]

ERRO:
O cadastro esta aceitando nome repetido, cujo teste if era para cuidar…???

[size=“11”][color=“red”]* Editado: Lembre-se de utilizar BBCode em seus códigos - marcossousa[/color][/size] :joia:

[color=“green”][size=“18”]Seja bem vindo ao PJ![/size][/color]

se você estiver salvando em banco de dados sugiro fazer com que o banco controle isto, aliás, pode haver 2 pessoas com o mesmo nome… e não com um n° de cpf ou rg. Tem certeza que esta é a melhor solução?

:okok:

Obrigado Marcos, estou salvando em um banco…mas o problema é que gostaria de saber so o pq o if não funciona…pois no meu entender ele era para direcionar para a pagina pessoa.jsp toda vida que cadastrasse nome igual!!!

O problema é na comparação com o metodo .equals!!!mas eu não sei o pq!

[quote=“marcossousa”][color=“green”][size=“18”]Seja bem vindo ao PJ![/size][/color]

se você estiver salvando em banco de dados sugiro fazer com que o banco controle isto, aliás, pode haver 2 pessoas com o mesmo nome… e não com um n° de cpf ou rg. Tem certeza que esta é a melhor solução?

:okok:[/quote]

<if(request.getParameter(“nomeField”).equals(temp.getString(“nome”)))
response.sendRedirect(“http://localhost:8080/Form/pessoa.jsp?status=Registro já existente”); >

passa o request primeiro pra uma variavel string pra depois vc comparar,nao sei se pode ser isso,
e na pior das hipoteses faça if(condicao){//abra e feche colchetes}

garanto nada auhahhaua