Ordenaçã coluna com Display tag

9 respostas
D

Olá pessoal,estou precisando de uma ajuda.Tenho uma grid na qual trago resultado de uma pesquisa,atualmente já vem do banco de forma ordenada.Insatisfeito,o querido cliente solicitou que ,qndo clicasse no cabeçalho ordenasse a pesquisa.Fiz uns testes com displaytag,porem ao jogar na minha aplicação dá erro.Se alguem puder analisar o seguinte codigo e informar como aplicar no mesmo displaytag ficarei grato

<table>
<tr>
   <th>Descrição</th>
    <th class="acao">Ação</th>
</tr>
<logic:notEmpty name="resultado">
    <logic:iterate name="resultado" id="r">
<tr>
<td><a href="#" onclick="editar('${r.identificador}')">
<bean:write name="r" property="nome"/> </a>
</td>
<td class="acao">
<a href="#" alt="Excluir" title="excluir" onclick="remover('${r.identificador}')"><img "${pageContext.request.contextPath}/img/pt_BR/icon_excluir.gif"/></a>
</td>
</tr>
</logic:iterate>
</logic:notEmpty>
</table>

9 Respostas

abelgomes

cade displaytag?
olha a instalaçãoa qui http://displaytag.sourceforge.net/11/install.html

vc tentou usar esse tuto? falei ai pra gente oque vc tentou fazer…

da uma olhada aqui: http://hotwork.sourceforge.net/hotwork/manual/displaytag/displaytag-user-guide.html

e aqui…

http://displaytag.homeip.net/displaytag-examples-1.1/example-sorting.jsp?d-49653-o=2&d-49653-s=1

acho que é isso que vc quer…

acho melhor vc usar displaytag mesmo…

boa sorte :wink:

D

esse é o codigo sem a mesma,achei estranho demais como ficou com a D.T, deu até vergonha de postar srsr...

olha como esse trecho ficou após a displaytag(abstraindo icone de exclusão de item)

<display:table name="sessionScope.stest" defaultsort="1" defaultorder="descending"> //aqui no sesseioScope,quem eu chamo lugar do stest?
	    <display:column property="resultado" title="Resultado" sortable="true" headerClass="sortable" />
    
  </display:table>
</jsp:root>
qnto ao link que mandou,ele mesmo que usei como referencia,porém nele é tudo simples,tudo estático,já no meu caso, 'resultado' é o resultado de uma collection com os dados do banco..
abelgomes

qual o problema que vc esta enfrentando com o codigo acima? uma vez que a lista esta na sessao (nao aconselhavel) vc trabalha como se ela fosse estatica, vc ordena e pela coluna que quer…:wink:

abelgomes

acabei de testar aqui no meu sistema, ta tudo funcionando nos conformes…

D

o seguinte,a jsp era da seguinte forma :

<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
<%@taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
<%@taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
<%@taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>
<jsp:include flush="true" page="/atributos.jsp"></jsp:include>
<!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></title>
</head>
<body>
<div id="content_form">	
		<html:form action="/tabelasapoio/tipoacao.mf" onsubmit="return ajaxRunForm(this,'conteudo')">
			<fieldset>
				<legend>Pesquisar</legend>
				<jsp:include flush="true" page="/MGeral/boxMsgs.jsp"></jsp:include>
				<html:hidden property="id" styleClass="none" />
				<html:hidden property="do" styleClass="none" value="select" styleId="do" />
				<div>
				<label>Descrição:</label>
				<html:text styleClass="inputBig" maxlength="50" property="nome" />
				</div>
				<div>
				<button value="Cadastrar" type="submit">Pesquisar</button>
				<button  class="botaoLado" type="button" onclick="relatorio();">Relatorio</button> 
				</div>
			</fieldset>
		</html:form>
	</div>
	<div id="content_grid">
		<fieldset>
				<legend>Resultado da pesquisa</legend>				
				<table>
					<tr>
						<th>Descrição</th>
						<th class="acao">Ação</th>
					</tr>
					<logic:notEmpty name="resultado">
						<logic:iterate name="resultado" id="r">
							<tr>
								<td><a href="#" onclick="editar('${r.identificador}')">
									<bean:write name="r" property="nome"/> </a>
								</td>
								<td class="acao">
									<a href="#" alt="Excluir" title="excluir" onclick="remover('${r.identificador}')"><img src="${pageContext.request.contextPath}/img/pt_BR/icon_excluir.gif"/></a>
								</td>
							</tr>
						</logic:iterate>
					</logic:notEmpty>
				</table>
		</fieldset>
	</div>

</body>
</html>

e agora com displaytag ficou da seguinte forma(eu substitui tudo pela parte so da grid a titulo de teste):

<%@ taglib prefix="c" uri="/WEB-INF/c.tld"%>
  <%@ taglib prefix="display" uri="/WEB-INF/displaytag"%>
<%@taglib uri="http://struts.apache.org/tags-html" prefix="html" %>
<%@taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %>
<%@taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %>

<jsp:root version="1.2" xmlns:jsp="http://java.sun.com/JSP/Page" xmlns:display="urn:jsptld:http://displaytag.sf.net">
  <jsp:directive.page contentType="text/html; charset=UTF-8" />



<jsp:include flush="true" page="/atributos.jsp"></jsp:include>

	
	
	    <display:table name="resultado" defaultsort="1" defaultorder="descending">
	    <display:column property="resultado" title="Resultado" sortable="true" headerClass="sortable" />
    
  </display:table>
</jsp:root>

porém com displaytag gera erro…

abelgomes

qual erro?

D

segue o stack

Failed to load or instantiate TagExtraInfo class: org.displaytag.tags.TableTagExtraInfo

abelgomes

vc seguiu o tutorial que tem la no site do display tag?
configourou seu web XML?
os jars dos display tag estao no seu classpath?
da uma olhada aqui
http://www.guj.com.br/posts/list/64391.java

D

complicado…ja fiz de tudo,como nos exemplos,mas continua Failed to load or instantiate TagExtraInfo class: org.displaytag.tags.TableTagExtraInfo

Criado 15 de outubro de 2008
Ultima resposta 16 de out. de 2008
Respostas 9
Participantes 2