Paginação em JSP

9 respostas
AlanLojudice

E aee blz??

Eu to com duvidas aqui de como fazer paginação em um jsp. Eu vi que a melhor maneira seria usar a Display tag library mas nao to entendendo nada como usa-la. Tenho que fazer instalação de alguma coisa, ou so colocar algumas coisas no jsp. To perdido aqui…Alguem pode me ajudar?? to precisando mto dessa paginação.

To querendo fazer uma paginação dessa maneira. http://displaytag.homeip.net/displaytag-examples-1.1/example-paging.jsp

Desde ja agradeço.

9 Respostas

Jair_Rillo_Junior

Ola Alan

você tem que fazer o download da displaytag e adicionar o jar dela no seu projeto (WEB-INF/lib)

Dentro da sua página JSP, você deve definir ela <%@ taglib uri="http://displaytag.sf.net" prefix="display" %>

Fora isso é só usar seus métodos.

É só ir seguindo o site que não tem erro

AlanLojudice

Então eu fiz isso…Dei um import external jar. ai coloquei os 3 jars que vieram no arquivo que baixei.

depois coloquei isso que vc falou <%@ taglib uri="http://displaytag.sf.net" prefix="display" %> mas nao reconheceu.

E eu queria colocar uma paginacao nessa minha tabela. Mas nao ta reconhecendo nada…Alguem pode dar uma ajuda??

valeu mesmo

<table width="100%" border="0" cellpadding="0" cellspacing="0" class="grid">
  
	<tr height="30">
		<th align="left" width="10%"><bean:message key="ocorrencia.numero"/></th>
        <th align="left" width="30%"><bean:message key="ocorrencia.existente.tabela.area"/>:</th>
        <!-- <th align="left" width="25"><bean:message key="ocorrencia.existente.tipoOcorrencia"/>:</th> 
        <th align="left" width="25"><bean:message key="ocorrencia.existente.foco"/>:</th>-->
        <th align="left" width="45%"><bean:message key="medico.regulador.atendimento.descricao"/>:</th>
        <th align="left" width="15%"><bean:message key="ocorrencia.status"/>:</th>
	</tr>  
    <tr>
     <td width="100%" valign="top" colspan="4">

        <DIV style="OVERFLOW: auto; WIDTH: 100%; HEIGHT: 450px">
		     <table cellpadding="1" width="100%"><tr><td>
		         <table border="0" cellspacing="1" cellpadding="2" width="100%" id="grdAtendimento" class="grid" background="#3333333">
					<%boolean linhaColorida = false;%>
					
					<%for (int i = 0; i < 1; i++) { %>
					
					
						<% String nomeDoAtributo = request.getAttribute("listaDeOcorrenciasEncontradas") != null ? "listaDeOcorrenciasEncontradas" : "listaOcorrencias"; %>
						<logic:notEmpty name='<%=nomeDoAtributo%>'> <logic:iterate id="ocorrenciaObj" name='<%=nomeDoAtributo%>'>
						
						<%Ocorrencia ocorrencia = (Ocorrencia) ocorrenciaObj; %>
						
						<tr class="<%=(linhaColorida = !linhaColorida) ? "alternada" : "normal"%>"> 
							<td width="9%">
								<a href="<%=request.getContextPath() + "/listarTodasOcorrencias.do?metodo=mostrarFicha&oidOcorrencia=" + ocorrencia.getOid()%>">
									<%=ocorrencia.getNumero()%>
								</a>
							</td>
							<td align="left" width="31%">
								
								<%	request.getAttribute("listaDeOcorrenciasEncontradas");
									EmAtendimentoTelefonico atendimento = (EmAtendimentoTelefonico) ocorrencia.getListaEstados().get(0);
									request.setAttribute("atendimento" , atendimento);
								%>
								<logic:present name="atendimento" property="listaCaracterizacaoAreaDeAtuacaoRaiz">
								
								<logic:iterate id="caracterizacao" name="atendimento" property="listaCaracterizacaoAreaDeAtuacaoRaiz">
									<logic:present name="caracterizacao" property="listaValoresAreaDeAtuacao">									
										<logic:iterate id="valorArea" name="caracterizacao" property="listaValoresAreaDeAtuacao">
											<logic:notEmpty name="valorArea" property="areaDeAtuacao">
												* <bean:write name="valorArea" property="areaDeAtuacao.descricao"/><br/>
											</logic:notEmpty>
											<logic:notEmpty name="valorArea" property="tabelaValoresAtributos">
												** <bean:message key="ocorrencia.existente.atributos"/><br/>
												<logic:iterate id="element" name="valorArea" property="tabelaValoresAtributos">
													**** <bean:write name="element" property="key"/>:&nbsp;<bean:write name="element" property="value"/><br/>
												</logic:iterate>
											</logic:notEmpty>
										</logic:iterate>
									</logic:present>
								</logic:iterate>
								</logic:present>								
							</td>
							<td width="45%"><%= atendimento.getDescricao().length()<=100?atendimento.getDescricao():atendimento.getDescricao().substring(0,100)+ " ..."%></td>
							<td width="15%"><%= ocorrencia.getDescricaoStatus()%></td>	
						</tr>
									
						
					</logic:iterate> </logic:notEmpty>
					
					<%} %>
					
					
		          <tr> 
		           <td align="center" bgcolor="#FFFFFF"></td>
		           <td align="center" bgcolor="#FFFFFF"></td>
		          </tr>
		         </table>
		         
	         </td></tr></table>
        </div>
     </td>
    </tr>
    <tr> 
		<td valign="top" colspan="2">
			<jsp:include page="errors.jsp" />
		</td>
    </tr>
    
    <tr> 
      <td  align="center" colspan="4" valign="bottom"> 
      	<BR>
      	<img src="<%=request.getContextPath() + "/pages/images/btnAtualizar.gif"%>" id=botaoVoltar onclick="window.open('<%=request.getContextPath()%>/listarTodasOcorrencias.do?metodo=carregar','_self')" style="cursor: pointer;" alt="Atualizar Lista" >
      </td>					
    </tr>
  </table>
Jair_Rillo_Junior

Import external jar?

Você não copiou eles para DENTRO do seu WEB-INF/lib ?? Dependendo da versão do Eclipse (se nao for o Europa) ou do plugin, é só copiar os arquivos .jar para dentro desse diretorio que ele automaticamente arruma o classpath.

Não adianta tentar fazer o resto do código se ele deu problema na taglib.

AlanLojudice

Entao eu uso o myEclipse 5.5.
Agora eu fui la no meu projeto pelo explorer e joguei na pasta web-inf/lib esses 3 arquivos. displaytag-1.1.1.jar, displaytag-export-poi-1.1.1.jar e displaytag-portlet-1.1.1.jar.

depois tentei colocar aquele endereco que vc falou mas mesmo assim nao funciounou. Eh so colocar isso.

<%@ taglib uri="http://displaytag.sf.net" prefix="display" %> No meu codigo que ele nao abre o jsp da esse erro.

org.apache.jasper.JasperException: The absolute uri: http://displaytag.sf.net cannot be resolved in either web.xml or the jar files deployed with this application
	org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:51)
	org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:409)
	org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:116)
	org.apache.jasper.compiler.TagLibraryInfoImpl.generateTLDLocation(TagLibraryInfoImpl.java:317)
	org.apache.jasper.compiler.TagLibraryInfoImpl.<init>(TagLibraryInfoImpl.java:148)
	org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:424)
	org.apache.jasper.compiler.Parser.parseDirective(Parser.java:493)

E mais algumas coisas

P

Se n]ao me engano os jars da displaytag precisam estar no lib e também os da commons beanutils e da commons lang, que acho que são dependências.

ddduran

Você tem que por essas bibliotecas no seu WEB-INF/lib como o Mancherster disse algumas vezes, se não ele não vai reconhecer os tlds do display tag

alem disso você precisa tambem baixar todos as dependencias dele.

http://displaytag.sourceforge.net/11/displaytag/dependencies.html

AlanLojudice

Preciso baixar td isso de jar???
Ai depois colocar tds na pasta lib la??

valeu

AlanLojudice

E uma coisa eu vi na parte de instalacao. E tem que ser os jars td na mesma versao??
tipo eu baixei o DisplayTag 1.1 e o meu commons collection por exemplo é o 1.2 e no site fala q tem q ser 1.1. Isso interfere???

E uma outra coisa. É so jogar esse jar no web-inf/lib do meu projeto ou do tomcat??

valeu

ddduran

ptz… no WEB-INF/lib do seu projeto ou no common/lib do tomcat

^pega sempre a ultima versão…

PS: fazer testes por si proprio é bom tambem

Criado 9 de outubro de 2007
Ultima resposta 10 de out. de 2007
Respostas 9
Participantes 4