Jogando valor de uma variavel para outra JSP usar numa query

4 respostas
F

Blz galera?

Estou tentando pegar um valor de um variavel e jogar para outra pagina para se utilizada pela minha query !

Tenho a seguinte JSP que tem o valor de um codigo

<%
                    con.setId(Integer.parseInt(request.getParameter("idField")));
                    boolean testa = con.consultarDados();

                    if (testa) {
                        ResultSet temp = con.getResultado();
                        response.sendRedirect("http://localhost:8084/sp/boletoimprimi/pedidob.jsp?status=Consulta OK&id=" +
                                temp.getString("id") + "&id_cliente=" + temp.getString("id_cliente") + "&entrega_cidade=" + temp.getString("entrega_cidade") + "&nome=" + temp.getString("nome") +  "&data_compra=" + temp.getString("data_inicio") +"&total_geral=" + temp.getString("total_geral"));
                    } else {
                        response.sendRedirect("http://localhost:8084/sp/boletoimprimi/pedidob.jsp?status=Registro nao encontrado");
                    }


            %>
Nesta outra jsp, tenho o seguinte codigo que monta a query
Select e.id_familia, p.total_final, p.data_compra, c.codigo, p.id,p.id_cliente, c.nome, p.total_geral, p.entrega_endereco,p.entrega_cidade, p.entrega_familia, FROM boletos b, cliente c INNER JOIN pedido p ON p.id_cliente = c.codigo WHERE p.id=variavel

No select acima onde esta VARIAVEL é onde tenho que colocar o id no qual sera baseado todo select...

Mas nao estou conseguindo jogar o valor da outra jsp nele...

Voces tem alguma ideia disso?

obrigado

4 Respostas

Vini_Fernandes

Cara, creio que voce deva direcionar seu Request para outro componente, portando, o que voce pode fazer eh:

//veja as novas linha
RequestDispatcher dispatcher = null;
String url = null;
 if  (testa) {  
                  ResultSet temp = con.getResultado();  
                  url = "http://localhost:8084/sp/boletoimprimi/pedidob.jsp?status=Consulta OK&id=" +  
                          temp.getString("id") + "&id_cliente=" + temp.getString("id_cliente") + "&entrega_cidade=" + temp.getString("entrega_cidade") + "&nome=" + temp.getString("nome") +  "&data_compra=" + temp.getString("data_inicio") +"&total_geral=" + temp.getString("total_geral");  
              } else {  
                  url = "http://localhost:8084/sp/boletoimprimi/pedidob.jsp?status=Registro nao encontrado";  
              }  
              dispactcher = request.getRequestDispatcher(url);
              request.setAttribute("idUsuario", idUsuario);
              dispatcher.forward(resquest, response);

e para recupera-la no novo componente:

Integer idUsuario = (Integer)request.getAttribute("idUsuaio");
//aqui voce devera montar a sua query

T+

F

Entao,

O select nao deu certo, utilizando desta logica…

Select e.id_familia, p.total_final, p.data_compra, c.codigo, p.id,p.id_cliente, c.nome, p.total_geral, p.entrega_endereco,p.entrega_cidade, p.entrega_familia, FROM boletos b, cliente c INNER JOIN pedido p ON p.id_cliente = c.codigo where p.id="+id+"")

Deu este erro: Illegal operation on empty result set.

Vini_Fernandes

Entao cara, depois que voce executar essa query voce tera um objeto do tipo ResultSet como resultado da pesquisa, entao veja se esse cara nao esta vazio, pois eh o significado da mensagem que voce esta recebendo.

T+

F

Entao vini, valeu pela força !

Entao, estou achando estranho, pq esse valro nao esta vazio, pois quando consultar ele mostra o registro…dai quando clic no botao para ele gerar outra de resultado da consulta do select…ele acontece esse erro…

Criado 5 de julho de 2010
Ultima resposta 5 de jul. de 2010
Respostas 4
Participantes 2