Jsp login ir para pagina seguinte

ola
estou fazendo tela de login que ja esta praticamente pronta ja até faz a validação de usuario
só que não sei como fazer ela chamar a pagina seguinte quando loguin e senh corretos

[code]login.html

...

Nome:

Senha :

Cadastre-se
[/code]

[code]login.jsp
//verifica se esta correto

... <% String login =request.getParameter("enome");

String senha=request.getParameter(“esenha”);
.
.//consulta
.
if(…){
//logar e ir para pagina menu.html

}else{

//mostrar a mesma tela com a mensagem de usuario ou senha incorreta
}

%>

como eu faço para ir para menu.html e para dar essa mensagem?

Se eu bem me lembro, você pode jogar para outra página de 2 formas:

  • response.sendRedirect
  • <jsp:forward page=“url”/>
response.sendRedirect("menu.jsp");  
<jsp:forward page="menu.jsp"> 

obg andre é exatamente isso, só que ainda preciso do erro
quando senha incorreta seria para mostrar a login.html com uma mensagem abaixo tipo “senha incorreta”
coloquei o cod chamando ela e out.println abaixo mas nao funciona

tenta fazer algo assim na tela do login:

  • Chame um atributo que é o erro
  • Se atributo == null ? “Não exibe nada” : “Erro”;

vamos no exemplo lá:

<html>  
     ...  
        <%
                 //captura onde vai dar o erro aqui
                 String deuErro = request.getParameter("erro");
         %>
        <body>  
        <%=(deuErro != null) ? out.println("Senha Incorreta") : "") %>
        <form action='login.jsp' method='get'>    
  <p>  
    <img src= "logo.gif" />  
  </p>  
  <p>Nome:   
    <input name='enome'>  
  </p>  
  <p>  
    Senha  
    :  
    <input name='esenha'>  
  </p>  
  <p><a href="#">Cadastre-se</a><br>  
    <input name="submit" type=submit value='Enviar' />  
</form>  
</body>  
</html>  

e na verificação:

<% 
String login =request.getParameter("enome"); 

String senha=request.getParameter("esenha"); 
. 
.//consulta 
. 
if(....){ 
//logar e ir para pagina menu.html 

}else{ 
%><jsp:forward page="login.jsp?erro=1"/><%
//mostrar a mesma tela com a mensagem de usuario ou senha incorreta 
} 

deu pra pegar a idéia?

intendi a logica, mas quando coloquei esse cod no login.html ele apenas exibiu o cod
seria pq a pagina é .html e não .jsp ou não tem nada a ver?

isso mesmo, elemenstos jsp são exibidos somente em páginas jsp

fica dando o seguinte erro

org.apache.jasper.JasperException: Unable to compile class for JSP:

An error occurred at line: 14 in the jsp file: /Formulario.jsp
Incompatible conditional operand types void and String

14:  <%=(deuErro != null) ? out.println("Senha Incorreta") : "") %>

Uai, é só alterar kkkkkk

          <%  
                 //captura onde vai dar o erro aqui  
                 String deuErro = request.getParameter("erro");  
                 String mensagem = "";
                 if ((deuErro.isEmpty()) || (deuErro.length() == 0) {
                              mensagem = "Falhou alguma coisa";
                 }
         %>
        <body>    
        <%=mensagem %>

tenta assim, aí é pura utilização de JSP, trabalha com a lógica aew kkkkkkkk