Olá galera, sera q alguem consegue me dizer o q esta errado com essa minha implementação?
[code]
<display:table name=“listAF”
requestURI=“AreaFuncionalManter?acao=LISTAR” pagesize=“2”
sort=“list” defaultsort=“0” style=“width: 580px”>
<display:column property="codigo" title="Código" sortable="true" />
<display:column property="descricao" title="Descrição" sortable="true" />
</display:table>
</form>
[/code]
Ele não ta nem chamando o servlet, o que pode ser?
Pessoal ja achei o meu erro, no jsp que chama essa listagem, eu estava apenas redirecionando para a listagem, onde na verdade eu deveria chamar meu servlet buscar minha list e colocar na requisição, blz, isso eu ja resolvi, ja esta exibindo os dados na table, agora não to conseguindo fazer chamar meu servlet e passar um codigo para fazer a alteração, minha linha esta assim:
<display:column property="codigo" title="Código" sortable="true" paramId="codigo" paramName="codigo" href="AreaFuncionalManter?acao=BUSCAR&codigo=" />
O valor está chegando null no servlet!
Alguma sugestão?
Estou com uma duvida a respeito do uso de displaytags
[color=red]Persistencia[/color]
try{
rs = statement.executeQuery(sql);
while(rs.next()){
dto.setId_produto(rs.getInt("Codigo"));
dto.setNome(rs.getString("Nome"));
dto.setPrecoAquisicao(rs.getFloat("PrecoVenda"));
dto.setPrecoVenda(rs.getFloat("Custo"));
dto.setQuant(rs.getInt("Quantidade"));
dto.setDescricao(rs.getString("Descricao"));
colecao.add(dto);
}
}
[color=red]Servlet[/color]
case 4:
List<DTOSupermercado> colecao = (ArrayList<DTOSupermercado>) neg.pesquisar(dto);
request.getSession().setAttribute("resultado", colecao);
response.sendRedirect("pesquisar.jsp");
[color=red]JSP[/color]
List colecao = (ArrayList) request.getSession().getAttribute("resultado");
<%if(colecao!=null){ %>
<center>
<display:table name="${colecao}" uid="colecao" pagesize="10" />
</center>
<%} %>
ele nao me retorna nenhum valor
“Nothing found to display.”
eu acho que tem alguma coisa errada na hora de imprimir a lista
Rendell, coloca um breakpoint e ve se tua coleção ta retornando algo, segundo vc tb não usou nenhuma tag que monta a coluna, algo tipo:
<display:column property="propriedadeDaSuaList" title="tituloQueSeraOHeader" sortable="true" />
Não manjo muito do displaytag, mas consegui fazer funcionar aqui, qualquer coisa posta duvida ai que eu tento te ajudar!
Abraço!
Tem mais, como vc ja buscando os dados e colocando na requisição vc pode fazer algo do tipo:
<display:table name="listAF" requestURI="AreaFuncionalManter?acao=LISTAR" pagesize="10" sort="list" defaultsort="0" style="width: 580px">
<display:column property="codigo" title="Código" sortable="true" />
<display:column property="descricao" title="Descrição" sortable="true" />
</display:table>
onde name=“listAF” é o nome da listagem que vc colocou na requisição e o property é o nome de cada propriedade do objeto que vc esta manipulando
minha lista nao ta vazia nao…
ela ta retornando um objeto
do tipo dto que tem la os getters e setters
eu coloquei as collum property os nomes dos atributos da classe
e ainda assim nao ta funcionando
<display:table name="colecao" pagesize="10">
<display:column property="id_produto" title="Codigo do Produto" />
<display:column property="nome" title="Nome" />
<display:column property="quant" title="Quantidade" />
<display:column property="precoAquisicao" title="Preço" />
<display:column property="precoVenda" title="Custo" />
<display:column property="descricao" title="Descrição" />
</display:table>
ahhh e o que esse requestURI faz?
indica o servlet que vai ser chamado para buscar a lista de objetos para popular a table
no meu caso entao eu nao preciso deste servlet porque eu ja populei a lista na classe e devolvi atravez da session
eu tambem tinha pensado assim, mas depois q tirei essa chamada ele sempre retornava vazio qd eu ia para a segunda pagina da table
o problema e que o meu nao esta montando nem a primeira tela
eu tentei passar uma lista sem objeto sem nada direto do jsp e mesmo assim nao funcionou
List teste = new ArrayList( 4 );
teste.add( "Test String 1" );
teste.add( "Test String 2" );
teste.add( "Test String 3" );
teste.add( "Test String 4" );
request.setAttribute( "teste", teste );
coloca o seu jsp pra eu dar uma olhada
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ page import="java.util.*" %>
<%@ taglib uri="http://displaytag.sf.net" prefix="display" %>
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Resultado de Produtos</title>
<%
request.getSession().getAttribute("resultado");
String path = request.getContextPath();
List teste = new ArrayList( 4 );
teste.add( "Test String 1" );
teste.add( "Test String 2" );
teste.add( "Test String 3" );
teste.add( "Test String 4" );
%>
</head>
<body>
<center>
<display:table name="teste" export="false" pagesize="10" />
</center>
</body>
</html>
Consegui fazer funcionar aqui
depois de apanhar um bucado
obrigado