Erro no DisplayTag

olá galera,

estou utilizando displaytag para paginação e estou com o seguinte erro:

java.lang.IndexOutOfBoundsException: fromIndex = -10
	at java.util.SubList.<init>(Unknown Source)
	at java.util.RandomAccessSubList.<init>(Unknown Source)
	at java.util.AbstractList.subList(Unknown Source)
	at org.displaytag.pagination.SmartListHelper.getListForPage(SmartListHelper.java:219)
	at org.displaytag.pagination.SmartListHelper.getListForCurrentPage(SmartListHelper.java:200)
	at org.displaytag.tags.TableTag.setupViewableData(TableTag.java:1525)
	at org.displaytag.tags.TableTag.doEndTag(TableTag.java:1198)
	at --->org.apache.jsp.jsp.enredo.ingles.ResultsSearch2_jsp._jspx_meth_display_table_0(org.apache.jsp.jsp.enredo.ingles.ResultsSearch2_jsp:343)
	at --->org.apache.jsp.jsp.enredo.ingles.ResultsSearch2_jsp._jspService(org.apache.jsp.jsp.enredo.ingles.ResultsSearch2_jsp:232)
	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
	at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:667)
	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
	at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
	at java.lang.Thread.run(Unknown Source)

as linha indicadas podem ser observadas abaixo:

232 if (_jspx_meth_display_table_0(_jspx_page_context))
        return;
343 if (_jspx_th_display_table_0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) {
      _jspx_tagPool_display_table_pagesize_name_export.reuse(_jspx_th_display_table_0);
      return true;

meu JSP é este:

 <%@page import="br.cefetce.lar.invente.*,java.util.*" errorPage="error.jsp" %> 
 <%@taglib prefix="display" uri="http://displaytag.sf.net" %>
 <%@include file="FormSearchEnredo2.jsp" %>
 
 <%  	
	Vector vetor = (Vector) request.getAttribute("vetor");
 	request.setAttribute("vetor",vetor);
 %>
 <html>
 <head> </head>
 <body>
 <div align=center>
 <display:table name="vetor" pagesize="10" export="false">
 
 	<display:column property="id" title="id" />
 	<display:column property="title" title="Título" />
 	<display:column property="author" title="Autora" />
 	<display:column property="institution" title="Institutição" />
 	<display:column property="provisionDate" title="provisionDate" />
 	<display:column property="learningObjectType" title="Tipo de Objeto Educacional" />
 	
 </display:table>
 </div>
 </body>
 </html>

que vc´s acham que pode estar acontecendo…
conto com a ajuda de vc´s…

Rafael Braga

<display:table class=“css” id=“r” name="${vetor}" pagesize=“10” >
<display:column titleKey=“nome” property="…" sortable=“true” />

Verifica tbm se seu array esta preenchido corretamente…
e veja se o exemplo q te mandei funciona…

[]'s

fiz as modoficações que vc indicou e o erro agora é um pouco diferente:

java.lang.IndexOutOfBoundsException: fromIndex = -10
	at java.util.SubList.<init>(Unknown Source)
	at java.util.RandomAccessSubList.<init>(Unknown Source)
	at java.util.AbstractList.subList(Unknown Source)
	at org.displaytag.pagination.SmartListHelper.getListForPage(SmartListHelper.java:219)
	at org.displaytag.pagination.SmartListHelper.getListForCurrentPage(SmartListHelper.java:200)
	at org.displaytag.tags.TableTag.setupViewableData(TableTag.java:1525)
	at org.displaytag.tags.TableTag.doEndTag(TableTag.java:1198)
	---->>>at org.apache.jsp.jsp.enredo.ingles.ResultsSearch2_jsp._jspService(org.apache.jsp.jsp.enredo.ingles.ResultsSearch2_jsp:262)
	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
	at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:667)
	at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
	at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
	at java.lang.Thread.run(Unknown Source)

262 if (_jspx_th_display_table_0.doEndTag() == javax.servlet.jsp.tagext.Tag.SKIP_PAGE) { _jspx_tagPool_display_table_pagesize_name_id_class.reuse(_jspx_th_display_table_0); return;
meu JSP agora esta assim…

 <%@ page import="br.cefetce.lar.invente.*" contentType="text/html; charset=ISO-8859-1" %>
 <%@ page import="java.util.*" contentType="text/html; charset=ISO-8859-1" %>
 <%@ page errorPage="error.jsp" contentType="text/html; charset=ISO-8859-1" %>
 <%@ taglib prefix="display" uri="http://displaytag.sf.net" %>
 <%@ include file="FormSearchEnredo2.jsp" %>
 
 <%  	
	Vector vetor = (Vector) request.getAttribute("vetor");
 	request.setAttribute("vetor",vetor);
 %>
 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 <html>
 <head> </head>
 <body>
 <div align=center>
 <display:table class="css" id="r" name="${vetor}" pagesize="10" >
 
 	<display:column property="id" title="id" sortable="true" />
 	<display:column property="title" title="Título" sortable="true" />
 	<display:column property="author" title="Autora" sortable="true"/>
 	<display:column property="institution" title="Institutição" sortable="true" />
 	<display:column property="provisionDate" title="provisionDate" sortable="true"/>
 	<display:column property="learningObjectType" title="Tipo de Objeto Educacional" sortable="true"/>
 	
 </display:table>
 </div>
 </body>
 </html>

da uma olhada nisso, caso nao consiga… ter ideia vou fazer um exemplo em um projeto e mando para vc…

<ui:dataGrid items="${itensNotaFiscal}" var=“item” name=“datagrid1” requestPath=“NotaFisca.jsp” width=“100%” height=“25” cellPadding=“2” cellSpacing=“1”>

		    <column width="8%"> 
				<header hAlign="left" colspan="2">
					<![CDATA[<input type="checkbox" id="idItemExcluirAll" name="idItemExcluirAll" onClick="javascript:toggleIdItemExcluirAll(this)">]]>
				</header>
		    	<item hAlign="center">
					<![CDATA[
							<input type="checkbox" name="indiceItemSelecionado" value="${item.index}"/>
							<a name="editar" onClick="editarItemNotaFiscal(${item.index})"/><img src="../Images_Home/DSP/Botoes/icon_Edita.gif" alt="Editar" width="11" height="14" border="0"></a>
						]]>
				</item>
			</column>


			<column width="69%">
				<header value="Guerra" hAlign="center" />
  				<item   value="${item.guerra}" hAlign="center" />
			</column>

			<column width="23%">
				<header value="Quantidade" hAlign="center" />
  				<item   value="${item.quantidade}" pattern="#,##0" hAlign="center" />
			</column>
			
		</columns>

		<rows          styleClass="HmeDspIfLn1"/>
		<alternateRows styleClass="HmeDspIfLn2"/>
		<header        styleClass="HmeDspIfTt" />

		<paging        size="5" requestPath="path" nextUrlVar="next" previousUrlVar="previous" pagesVar="pages"/>
		
	</ui:dataGrid>

qualquer coisa coloca eu no msn fernando_oliveira10@hotmail.com
me dia como andas !
[]'s

puts, alguem da 1 luz nesse topic aki?!?

Cara tem como vc enviar o bean que se encontra no vector? Uma observação logo observada é não colocar o vector dentro do request e sim em uma sessão pq de acordo com o que vc for paginando o arquivo com o request a referencia da lista ira se perder.

olá Felipe,

vc tem razão, ao colocar o bean no session a paginação poderá ocorre, como
indicado no código estou pegando o bean por request e após a primeira paginação os dados são perdidos, agora estou colocando os dados na session
e tu ocorre blz…

valeu…