Array classe x jsp

12 respostas
E

Pessoal,

Tenho um jsp que possui 4 links (em andamento, a iniciar, cancelado e finalizado). Preciso que ao clicar em um desses links passe o valor, por exemplo no link ‘em andamento’ passe o valor em andamento, no link ’ cancelado’ passese o valor cancelado e assim por diante, para uma classe e de acordo com este valor seria executado uma query; o resultado dessa query seriam varios registros do bd e precisaria que retornasse para o jsp para que fizesse o design. Como faço isso?

Alguem tem uma ideia melhor para se executar isso?

12 Respostas

Vini_Fernandes

cara, suponha q a classe que vc deseja executar seja

public class MinhaClasse extends HttpServlet{
	public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServerException, IOException{
		String acao = (String)req.getParameter("acao");
                if(acao != null && "andamento".equals(acao)){
                   //TODO
                }
                else if(acao != null && "cancelado".equals(acao)){
                   //TODO
                }
       }
}

e na acao que cada link executara voce devera ter algo com isso:

//para p o link cancelado
<link page="/minhaClasse?acao=cancelado">

//para p o link em andamento
<link page="/minhaClasse?acao=andamento">

nao se esqueca de declarar sua classe Servlet no web.xml assim:

<servlet>
    	<servlet-name>minhaClasse</servlet-name>
    	<servlet-class>MinhaClasse</servlet-class>
</servlet>

<servlet-mapping>
    	<servlet-name>minhaClasse</servlet-name>
    	<url-pattern>/minhaClasse</url-pattern>
</servlet-mapping>

Espero ter ajudado!

E

Vini Fernandes:
cara, suponha q a classe que vc deseja executar seja

public class MinhaClasse extends HttpServlet{
	public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServerException, IOException{
		String acao = (String)req.getParameter("acao");
                if(acao != null && "andamento".equals(acao)){
                   //TODO
                }
                else if(acao != null && "cancelado".equals(acao)){
                   //TODO
                }
       }
}

Como funciona o <link page=? Não deu certo!
e na acao que cada link executara voce devera ter algo com isso:

//para p o link cancelado
<link page="/minhaClasse?acao=cancelado">

//para p o link em andamento
<link page="/minhaClasse?acao=andamento">

nao se esqueca de declarar sua classe Servlet no web.xml assim:

<servlet>
    	<servlet-name>minhaClasse</servlet-name>
    	<servlet-class>MinhaClasse</servlet-class>
</servlet>

<servlet-mapping>
    	<servlet-name>minhaClasse</servlet-name>
    	<url-pattern>/minhaClasse</url-pattern>
</servlet-mapping>

Espero ter ajudado!

Vini_Fernandes

Qual eh a duvida?

E

Coloquei e não funcionou. Tem que fechar a tag? Como funciona?

E

Coloquei e não funcionou. Tem que fechar a tag? Como funciona?

Fiz um teste com <jsp:forward page=“TIG.jsp” /> mas ele redireciona direto, sem ter que clicar para aparecer algo, digamos que um link diferente.

Felagund

vc tem que por o ?acao=andamento logo depois do link

[]'s

E

Felagund:
vc tem que por o ?acao=andamento logo depois do link

[]'s

Rafael, mas isso pra passar o valor… estou precisando de um link que funcione como um em html.

O <jsp:forward page=“TIG.jsp” /> é como um redirect, não precisa clicar pra abrir, ele já redireciona sem ter clicado.

Entende?

Vini_Fernandes

Entao Ellensmp, essas tag eram apenas esquemas para ilustrar seu problema. Veja se agora funciona:

<td>
	<a href="/nomeDaSuaAplicacao/minhaClasse?acao=andamento">em andamento</a>
</td>

OBS: estou considerando que suas paginas esteja na raiz do projeto!

ate mais

E

Vini Fernandes:
Entao Ellensmp, essas tag eram apenas esquemas para ilustrar seu problema. Veja se agora funciona:

<td>
	<a href="/nomeDaSuaAplicacao/minhaClasse?acao=andamento">em andamento</a>
</td>

OBS: estou considerando que suas paginas esteja na raiz do projeto!

ate mais

Como eu pego esse valor em minha classe?

Eu passava e pegava assim:

PASSANDO

boolean resultado = fazLogin.Verifica(login, senha);

PEGANDO

public boolean Verifica(String login, String senha) {
E

Ah, quando eu pegava valores de um formulario, pegava assim:

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

Mas isso em uma servlet mas em uma classe nao dá por causa do request.

E

Ellensmp:
Ah, quando eu pegava valores de um formulario, pegava assim:

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

Mas isso em uma servlet mas em uma classe nao dá por causa do request.

Pensando bem, parece que isso é impossivel com uma classe normal… mas pra uma servlet nao…
Tem jeito de eu pegar esses valores em uma classe normal?

Vini_Fernandes

Cara, isso eu já nao sei! Veja que esses parametros tem sentido apenas em um contexto, que é o tratamento das requisicoes do usuario, portanto, nao vejo razao “pegar esse parametro” de outra classe!

T+

Criado 26 de outubro de 2009
Ultima resposta 27 de out. de 2009
Respostas 12
Participantes 3