Não estou conseguindo comparar o parametro!

Olá , por favor me dêm uma mãozinha…



Eu tenho uma página , na qual a submeto novamente…para pegar os parametro que eu lhe re-envio assim que clico nos links dá página.

O parametro sempre é o mesmo…(chamado "usr")…dependendo do valor que vier…(por exemplo …null, assoc,func,forn) ele mudará uma página contida em uma coluna da tabela com a função <%@ include file="pagina.jsp" %>…



o problema é que não estou conseguindo comparar o valor que está vindo do parâmetro…e ele acaba sempre caindo na condição "Fora de todas as condições…" conforme no código abaixo…



tentativas :

-----------------

Já tentei criar um método para receber o request.getParameter e depois com o get comparar utilizando "equals"…mas tbm não funcionou…

criei tres variaves (associado com valor "assoc" , funcionario com valor "func" e fornecedor com valor "forn"…e tentei comparar com as variaveis…tbm não funcionou…





OBSERVAÇÂO…

E o mais engraçado de tudo é que eu mando mostrar o valor de usr…(request.getParameter("usr")) na tela …e ele tras os valores certos…

o problema esta na comparação…eu não estou conseguindo comparar…tentei utilizar o "trim()" também…mas nao adiantou…o que pode ser???



E na primeira vez que ele entra na página , que o valor de request.getParameter é nulo…ele funciona…e cai corretamente na página de Boas vindas…Agora quando clico nos links (figuras)…ele pega o valor…eu mostro o valor…mas na hora de comparar…fura tudo…



o que estou fazendo de errado???

Obrigado.



Bom trabalho a todos…



--------------------------------------

Arquivo :Main.jsp

--------------------------------------



<html>

<head>

<title>CIDIM .NET</title>

</head>



<BODY>

<TABLE style="WIDTH: 739px; HEIGHT: 526px" border="1" align="center" BGCOLOR="#ffffcc"><TR>





<TD style="WIDTH: 150px; HEIGHT: 50px" >

<a href="Main.jsp?usr=assoc"><IMG height=30 src="associadoc.gif" width=107 border=0></a>

<a href="Main.jsp?usr=forn"><IMG height=30 src="fornecedorc.gif" width=107 border=0></a>

<a href="Main.jsp?usr=func"><IMG height=30 src="funcionarioc.gif" width=107 border=0></a>

</TD>





<TD>



<% if (request.getParameter("usr")==null){

%>

<%@ include file="BoasVindas.jsp"%> <%

}



<% if (request.getParameter("usr")=="assoc"){

%>

<%@ include file="Associados.jsp"%> <%

}



<% if (request.getParameter("usr")=="func"){

%>

<%@ include file="Funcionarios.jsp"%> <%

}



<% if (request.getParameter("usr")=="forn"){

%>

<%@ include file="Fornecedores.jsp"%> <%

}

else{

out.println("Fora de todas as condições…");

}



</TD>





</TABLE>

</body>

</html>

Pittela, o problema é que vc está comparando a referencia das Strings e não o valor contido nelas. Tente fazer a comparação usando o equals da classe String assim:





<% if (request.getParameter("usr").equals("assoc")){

%>

<%@ include file="Associados.jsp"%> <%

}



Apenas para o caso de null é que vc continua do jeito que está fazendo.



valeuz…

Isso mesmo que o jack_-_ganzha falou, mas com um detalhe: Troque os if posteriores por else if, caso contrário ele tentará passar pelo if mesmo após o primeiro if já ter dito que é null, e aí dará NullPointerException.

Outra idéia seria colocar um "request.getParameter("usr")!=null && " antes de todos os testes.

Valeu pessoal …obrigado…

aproveitei todas as dicas de vcs…

Valeu!



Felipe.