Não estou conseguindo comparar o parametro!

4 respostas
P

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

&lt;html&gt;
&lt;head&gt;
	&lt;title&gt;CIDIM .NET&lt;/title&gt;
&lt;/head&gt;

&lt;BODY&gt;
&lt;TABLE style="WIDTH&#58; 739px; HEIGHT&#58; 526px" border="1" align="center" BGCOLOR="#ffffcc"&gt;&lt;TR&gt;
                                          ..............................

                                         &lt;TD style="WIDTH&#58; 150px; HEIGHT&#58; 50px" &gt;
                                    	&lt;a href="Main.jsp?usr=assoc"&gt;&lt;IMG height=30 src="associadoc.gif" width=107 border=0&gt;&lt;/a&gt;
	                                    &lt;a href="Main.jsp?usr=forn"&gt;&lt;IMG height=30 src="fornecedorc.gif" width=107 border=0&gt;&lt;/a&gt;
	                       		&lt;a href="Main.jsp?usr=func"&gt;&lt;IMG height=30 src="funcionarioc.gif" width=107 border=0&gt;&lt;/a&gt;
		                 &lt;/TD&gt;
                                          .................................

                                        &lt;TD&gt;

                                             &lt;% if &#40;request.getParameter&#40;"usr"&#41;==null&#41;&#123;
                                             %&gt;
                                                &lt;%@ include file="BoasVindas.jsp"%&gt; &lt;%
                                             &#125;%&gt;

                                            &lt;% if &#40;request.getParameter&#40;"usr"&#41;=="assoc"&#41;&#123;
                                             %&gt;
                                                &lt;%@ include file="Associados.jsp"%&gt; &lt;%
                                             &#125;%&gt;

                                            &lt;% if &#40;request.getParameter&#40;"usr"&#41;=="func"&#41;&#123;
                                             %&gt;
                                                &lt;%@ include file="Funcionarios.jsp"%&gt; &lt;%
                                             &#125;%&gt;

                                            &lt;% if &#40;request.getParameter&#40;"usr"&#41;=="forn"&#41;&#123;
                                             %&gt;
                                                &lt;%@ include file="Fornecedores.jsp"%&gt; &lt;%
                                             &#125;
                                             else&#123;
                                                 out.println&#40;"Fora de todas as condições..."&#41;;
                                             &#125;%&gt;

                                    &lt;/TD&gt;

                                   ...........................................
 &lt;/TABLE&gt;
&lt;/body&gt;
&lt;/html&gt;

4 Respostas

Bani

Para comparar valores de String você deve usar o método equals.
Exemplo: request.getParameter(“usr”).equals(“assoc”)

Porém, se ele for null, ocorrerá uma NullPointerException.

Então, troque seus ifs por else if (já que você já está testando o null no primeiro if) ou então adicione um request.getParameter(“usr”) != null para cada condição.

eferraz

E carinha blz…!!

Cara trabalho a pouco tempo com o Jsp. Mas acho que tenho uma sugestão, você ja tentou na hora que você recupera os valores passar esse valor para um campo hidem do html, e fazer o teste com o campo hidem…

Tenta fazer isso.!!!

Qualquer coisa estou a sua disposição …

valeu até mais.!!!

N

O erro está realmente na forma como você está comparando Strings.

Você não pode comparar o conteúdo de strings com o operador “==”, você deve usar os métodos equals(String), ou para evitar confusões com maiúsculos e minúsculos, equalsIgnoreCase(String).

Para evitar diversas comparações com null, faça no início da página algo do tipo:

...
String paramUsr = request.getParameter&#40;"usr"&#41;;
paramUsr = &#40;paramUsr == null ? "" &#58; paramUsr&#41;;
...

Então um parâmetro que viria com valor null agora está com valor vazio “” na variável paramUsr.

Ou use elseif’s como proposto anteriormente.

Boa sorte.

:roll:

I

Para evitar o problema do null pode usar também:

“assoc”.equals(request.getParameter(“usr”))

Valeu.

Criado 8 de março de 2003
Ultima resposta 13 de mar. de 2003
Respostas 4
Participantes 5