eae galerinha, como posso estar resolvendo a questao, seguinte gostaria de exibir o nome do meu bean no meu jsp, porem so exibe null, mas no for each exibe certo, como posso exibir o nome do bean que é atribuido na servlet no jsp?? [code]
<jsp:useBean id=“t” class=“br.com.dboas.bean.ProdutoBean” scope=“request”/>
nome <jsp:getProperty name=“t” property=“nomeProd” />// ISSO AKI SO DA NULL PQ? COMO POSSO EXIBIR O NOME CONTIDO NO BEAN SEM USAR O C:FOREACH?
[/code]
servlet
if (op.equalsIgnoreCase("Pesquisar")) {
ProdutoBean PB = new ProdutoBean();
if((request.getParameter("codigoPesquisa").trim().equalsIgnoreCase(""))){
JOptionPane.showMessageDialog(null, "o codigo esta vazio sera analizado outro campo");
}
try {
ProdutoDao PD = new ProdutoDao();
ArrayList<ProdutoBean> listaProd = (ArrayList<ProdutoBean>) PD.listarProduto(PB);
request.setAttribute("listaDeProdutos", listaProd);
if(listaProd.size()==1){
JOptionPane.showMessageDialog(null, "so um item");
RequestDispatcher rd = request.getRequestDispatcher("/viewProduto/Pesquisa.jsp");
rd.forward(request, response);
}
for (ProdutoBean lp : listaProd){
PB.setNomeProd(lp.getNomeProd());// AKI EU PASSO O NOME contido na lista retornada pelo dao p/ o objeto beam, mas no jsp da null?
PB.setVlVenda(lp.getVlVenda());
JOptionPane.showMessageDialog(null, "nome"+lp.getNomeProd());
JOptionPane.showMessageDialog(null, "data"+lp.getDtCadastro());
}System.out.println(PB.getNomeProd()); //aki imprime o nome do beam mas quando chega no jsp da null pqppqpqp ??
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
Ok, muito obrigado pelas dicas com base nelas resolvi o problema. eu nao estava passando o atributo da solicitação para jsp
if (op.equalsIgnoreCase("Pesquisar")) {
ProdutoBean PB = new ProdutoBean();
if((request.getParameter("codigoPesquisa").trim().equalsIgnoreCase(""))){
JOptionPane.showMessageDialog(null, "o codigo esta vazio sera analizado outro campo");
}
try {
ProdutoDao PD = new ProdutoDao();
ArrayList<ProdutoBean> listaProd = (ArrayList<ProdutoBean>) PD.listarProduto(PB);
request.setAttribute("listaDeProdutos", listaProd);
if(listaProd.size()==1){
JOptionPane.showMessageDialog(null, "so um item");
}
for (ProdutoBean lp : listaProd){
PB.setNomeProd(lp.getNomeProd());
PB.setVlVenda(lp.getVlVenda());
request.setAttribute("t", PB); //crio o atributo de solicitação para o jsp ver o produto contido na lista retornada pelo dao
RequestDispatcher rd = request.getRequestDispatcher("/viewProduto/Pesquisa.jsp"); //envio a solicitação
rd.forward(request, response);
JOptionPane.showMessageDialog(null, "nome"+lp.getNomeProd()); //fita para verificar se os dados estao certos
JOptionPane.showMessageDialog(null, "data"+lp.getDtCadastro()); //firula
}System.out.println(PB.getNomeProd()); //firula
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
e no jsp chamei usando o atributo passado pelo servlet
<jsp:useBean id="t" class="br.com.dboas.bean.ProdutoBean" scope="request"/>
nome <jsp:getProperty name="t" property="nomeProd" /> // e assim exibo o mesmo nome que o exibido no c:forEach