Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

zipzap

passagem de parâmetros por url

Recommended Posts

Olá.Como faço para aceder a um parâmetro passado por url??Por exemplo:

 

<li><a href="greeting.jsp?id=1">Adicionar Astrológico</a></li>

 

como faço para testar se o id é passado e se tem o valor 1??

 

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

String id="";
id = request.getParameter("id");

A variável id recebe o valor de id pelo método get.

O que voce precisa agora é:

 

- Comparar duas strings: id e "1"

ou

- Converter o valor de id para inteiro e comparar usando if.

 

Veja isso:

http://java.sun.com/j2se/1.3/docs/api/java/lang/String.html

Compartilhar este post


Link para o post
Compartilhar em outros sites

Usa o método equals

 

request.getParameter("id").equals("1")

 

Um conselho, porque você não utiliza JSTL??

 

Bem melhor..

 

flwww

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual é o erro?

 

Acabei de testar e funcionou:

 

<% if (request.getParameter("id").compareTo("1")==0) {%>
	<h3>id recebeu 1</h3>
	<% } else{%>
	<h3>id nao recebeu 1</h3>		
	<%}%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá.Penso que o erro será da não verificação da variável ser passada.Como testo de a variável está a ser passada ou não pois recebo do apache o seguinte erro:

 

type Exception report

 

message

 

description The server encountered an internal error () that prevented it from fulfilling this request.

 

exception

 

org.apache.jasper.JasperException: Exception in JSP: /greeting.jsp:72

 

root cause

 

java.lang.NullPointerException

 

?

 

Outra coisa ,não conheço JSTL

Compartilhar este post


Link para o post
Compartilhar em outros sites

Provavelmente esta ocorrendo o NullPointerException porque o request.getParameter("id") deve estar retornando null, ou seja ele não está pegando o parametro id da sua url (talvez porque ele não exista, ou porque foi digitar de maneira incorreta)

Compartilhar este post


Link para o post
Compartilhar em outros sites

não é um form mas sim uma referência para o mesmo url só que com um parâmetro id

 

 

<li><a href="greeting.jsp?id=1">Adicionar Astrológico</a></li>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vou pesquisar como resolver seu problema.

O que voce precisa é:

 

Algo que identifique se foi passado alguma coisa pelo método get.

Se sim

o código acima funciona

se não continua o código normamente.

 

Isso deve ser feito para tratar a exception ponteiro nulo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual é o erro?

 

Acabei de testar e funcionou:

 

<% if (request.getParameter("id").compareTo("1")==0) {%>
	<h3>id recebeu 1</h3>
	<% } else{%>
	<h3>id nao recebeu 1</h3>		
	<%}%>

O problema no código acima é que o 0(zero) não está entre aspas dai ele pensa que é um inteiro, coloca aspas que resolve ou altera o compareTo por equals

 

<% if (request.getParameter("id").equals("1")) {%>
	<h3>id recebeu 1</h3>
	<% } else{%>
	<h3>id nao recebeu 1</h3>		
	<%}%>

Compartilhar este post


Link para o post
Compartilhar em outros sites

No manual da API diz que o retorno de compareTo é um inteiro, então não precisa colocar aspas.

Só não sei qual o valor retornado, manda imprimir esse retorno na tela que voce verá.

 

O uso de equals tavez seja melhor mesmo, ele retorna um valor booleano.

 

 

O problema no código acima é que o 0(zero) não está entre aspas dai ele pensa que é um inteiro, coloca aspas que resolve ou altera o compareTo por equals

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.