Struts 1.0 LEGADO dos inferno!

Pessoal Bom dia !

 Nos temos um desgramando sistema aqui de notas fiscais, que vai ser migrado para jsf ou vraprtor, estou com o seguinte problema:

O programador que dava manutenção foi para outra empresa, e tenho que fazer uma paginação nisto:

Alguém tem idéia como se faz ?

[code]<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>

<div style="display: table-column; float:left; clear: right; border: 1px solid #c1c1c1; width: 49%">
<fieldset>
<legend>Vencimentos do dia</legend>

<table width="100%" border="0" cellspacing="1">
<tr bgcolor="#c1c1c1">
<th>Documento</th>
<th>Valor</th>
</tr>
<c:forEach items="${vencimentosDia}" var="vencimentos">
<tr bgcolor="#f1f1f1">
<td>${vencimentos.numeroNotaFiscal}</td>
<td align="right">${vencimentos.valorPrevista}</td>
</tr>
</c:forEach>
</table>
</fieldset>
</div>

<div style="display: table-column; float:right; clear: right; border: 1px solid #c1c1c1; width: 49%">
<fieldset>
<legend>Inadimplentes</legend>
<table width="100%" border="0" cellspacing="1">
<tr bgcolor="#c1c1c1">
<th width="20%">Documento</th>
<th width="20%" align="center">Valor</th>
<th align="center" width="40%">Data de Pagamento</th>
<th align="center" width="20%">Dias em Atraso</th>
</tr>
<c:forEach items="${inadimplentes}" var="inadimplentes">
<tr bgcolor="#f1f1f1">
<td>${inadimplentes.numeroNotaFiscal}</td>
<td align="right">${inadimplentes.valorPrevista}</td>
<td align="center">${inadimplentes.dataPrevista}</td>
<td align="center">${inadimplentes.diasAtraso}</td>
</tr>
</c:forEach>
</table>
</fieldset>
</div>

[/code]

meu web.xml

ta assim:

[code]<?xml version=“1.0” encoding=“ISO-8859-1”?>
<web-app xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance
xmlns=“http://java.sun.com/xml/ns/j2ee
xmlns:javaee=“http://java.sun.com/xml/ns/javaee
xmlns:web=“http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd
xsi:schemaLocation=“http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd” version=“2.4”>

<display-name>UFC-ContasReceber</display-name>
<servlet>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<filter>
<filter-name>ValidaLogin</filter-name>
<filter-class>br.ufc.filters.ValidaLoginFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>ValidaLogin</filter-name>
<url-pattern>.do</url-pattern>
</filter-mapping>
<servlet-mapping>
<servlet-name>action</servlet-name>
<url-pattern>
.do</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<jsp-config/>
<login-config>
<auth-method>BASIC</auth-method>
</login-config>
<servlet>
<description></description>
<display-name>AjaxUteis</display-name>
<servlet-name>AjaxUteis</servlet-name>
<servlet-class>br.ufc.uteis.AjaxUteis</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AjaxUteis</servlet-name>
<url-pattern>/ajax</url-pattern>
</servlet-mapping>

</web-app>[/code]

Da uma olhada nesta taglib, tem vários exemplos.

http://displaytag.sourceforge.net/1.2/

Mauricio, o negocio não é esse !

   O negocio e o Struts que tem que configurar 500 xml e 350 mais não sei o que !

um parto cortado a faca o unbingu !

[code]<!-- ========================= Paginação ================================= -->

       &lt;action path="/principal" name="inicialForm" parameter="operacao" type="br.ufc.action.displaytag.PaginaInicial"&gt;
		&lt;forward name="paginaInicial" path="/WEB-INF/pages/home.jsp"&gt;&lt;/forward&gt;

</action>
<!-- ========================= Paginação fim ================================= --> [/code]

para configurar o struts.config.xml

é tão ruim assim??

cara… pra fazer uma paginação simples use o DisplayTag.

Para quem ta acostumado com jsf rickfaces… STRUTS == ASSEMBLE !

:slight_smile:

&lt;action path="/principal" name="inicialForm" parameter="operacao" type="br.ufc.action.PaginaInicial"&gt; &lt;forward name="paginaInicial" path="/WEB-INF/pages/home.jsp"&gt;&lt;/forward&gt;

duvida é esta, se tenho que por algo aqui no xml !

Não to conseguindo configura o bixo !

09/08/2010 10:09:33 org.apache.catalina.core.ApplicationDispatcher invoke
SEVERE: Servlet.service() for servlet jsp threw exception
javax.servlet.jsp.JspException: ServletException in '/WEB-INF/tiles/template.jsp': javax.servlet.jsp.JspException: ServletException in '/principal.do?operacao=paginaInicial': The absolute uri: http://displaytag.sf.net cannot be resolved in either web.xml or the jar files deployed with this application
	at org.apache.struts.taglib.tiles.InsertTag$InsertHandler.doEndTag(InsertTag.java:923)
	at org.apache.struts.taglib.tiles.InsertTag.doEndTag(InsertTag.java:462)
	at org.apache.jsp.WEB_002dINF.index_jsp._jspx_meth_tiles_005finsert_005f0(index_jsp.java:149)
	at org.apache.jsp.WEB_002dINF.index_jsp._jspService(index_jsp.java:78)
	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
	at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
	at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
	at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
	at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
	at org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:263)
	at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
	at org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:318)
	at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
	at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at br.ufc.filters.ValidaLoginFilter.doFilter(ValidaLoginFilter.java:59)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
	at java.lang.Thread.run(Thread.java:636)
09/08/2010 10:09:33 org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet action threw exception
javax.servlet.jsp.JspException: ServletException in '/WEB-INF/tiles/template.jsp': javax.servlet.jsp.JspException: ServletException in '/principal.do?operacao=paginaInicial': The absolute uri: http://displaytag.sf.net cannot be resolved in either web.xml or the jar files deployed with this application
	at org.apache.struts.taglib.tiles.InsertTag$InsertHandler.doEndTag(InsertTag.java:923)
	at org.apache.struts.taglib.tiles.InsertTag.doEndTag(InsertTag.java:462)
	at org.apache.jsp.WEB_002dINF.index_jsp._jspx_meth_tiles_005finsert_005f0(index_jsp.java:149)
	at org.apache.jsp.WEB_002dINF.index_jsp._jspService(index_jsp.java:78)
	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377)
	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
	at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
	at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
	at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
	at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
	at org.apache.struts.tiles.TilesRequestProcessor.doForward(TilesRequestProcessor.java:263)
	at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
	at org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:318)
	at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
	at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at br.ufc.filters.ValidaLoginFilter.doFilter(ValidaLoginFilter.java:59)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
	at java.lang.Thread.run(Thread.java:636)

to pegando este erro !::

repare que no seu código ele está usando JSTL + EL para criar a tabela, e não o struts.

para paginar esse treco você tem duas opções:

a mais facil é aproveitar a mesma lista que ja está sendo pega via EL ai e usar o displaytag (sim, refazer a tabela com o displaytag… ele facilita você lidar com uma lista de VOs como parece que o cara está fazendo).

a mais dificil seria você criar os links da pagina que o cara quer (próxima, ultima, etc) na mão, passar esse parâmetro para a sua action e la de acordo com a página você filtrar no banco de dados quais registros você quer (usando o rownum do oracle, o limit do mysql, etc)

Cara, na sua jsp da ação “/principal.do?operacao=paginaInicial” ela ta apontando para a uri “http://displaytag.sf.net” veja lah onde vc declara suas tags. Vc está apontando para um caminho que não está mapeado na sua aplicação.

O sistema ta dessa maneira, ele gera uma lista de 9999999999999 registro na cara do sistema de porrada, não sei por que esse anormal fez assim sem paginar !

[code]<?xml version=“1.0” encoding=“ISO-8859-1”?>
<!DOCTYPE struts-config PUBLIC “-//Apache Software Foundation//DTD Struts Configuration 1.2//EN”
http://struts.apache.org/dtds/struts-config_1_2.dtd”>
<struts-config>
<data-sources />
<form-beans>
<form-bean name=“logonForm” type=“br.ufc.form.LogonForm” />
<form-bean name=“notaFiscalForm” type=“br.ufc.form.NotaFiscalForm” />
<form-bean name=“itensNotaFiscalForm” type=“br.ufc.form.ItensNotaFiscalForm” />
<form-bean name=“parcelaForm” type=“br.ufc.form.ParcelaForm” />
<form-bean name=“formasPagamentoForm” type=“br.ufc.form.FormasPagamentoForm” />
<form-bean name=“caixaEntradaSaidaForm” type=“br.ufc.form.CaixaEntradaSaidaForm” />
<form-bean name=“caixaForm” type=“br.ufc.form.CaixaForm” />
<form-bean name=“caixaContasReceberForm” type=“br.ufc.form.ContasReceberForm” />
<form-bean name=“caixaContasPagarForm” type=“br.ufc.form.ContasPagarForm” />
<form-bean name=“relatorioForm” type=“br.ufc.form.RelatorioForm” />
<form-bean name=“inicialForm” type=“br.ufc.form.InicialForm” />
<form-bean name=“pedidoDespesaForm” type=“br.ufc.form.PedidoDespesaForm” />
<form-bean name=“itensPedidoDespesaForm” type=“br.ufc.form.ItensPedidoDespesaForm” />
<form-bean name=“acompanhamentoPDForm” type=“br.ufc.form.AcompanhamentoPDForm” />

&lt;/form-beans&gt;
&lt;global-exceptions /&gt;
&lt;global-forwards&gt;
	&lt;forward name="index" path="/WEB-INF/index.jsp" /&gt;
&lt;/global-forwards&gt;
&lt;action-mappings&gt;
	&lt;action path="/logon" type="br.ufc.action.LogonAction" parameter="operacao" name="logonForm"&gt;
		&lt;forward name="sair" path="/logon.do?operacao=sair"&gt;&lt;/forward&gt;
	&lt;/action&gt;
	
	&lt;action path="/principal" name="inicialForm" parameter="operacao" type="br.ufc.action.PaginaInicial"&gt;
		&lt;forward name="paginaInicial" path="/WEB-INF/pages/home.jsp"&gt;&lt;/forward&gt;
	&lt;/action&gt;
	
	&lt;action name="notaFiscalForm" parameter="operacao"	path="/notaFiscal" type="br.ufc.action.NotaFiscalAction"&gt;
		&lt;forward name="itensNotaFiscal" path="/itensNotaFiscal.do?operacao=prepareSave" /&gt;
	&lt;/action&gt;

	&lt;action name="itensNotaFiscalForm" parameter="operacao" path="/itensNotaFiscal" type="br.ufc.action.ItensNotaFiscalAction"&gt;
		&lt;forward name="parcelaNotaFiscal" path="/parcela.do?operacao=prepareSave" /&gt;
		&lt;forward name="listNotaFiscal" path="/notaFiscal.do?operacao=listAll" /&gt;
		
	&lt;/action&gt;

	&lt;action name="parcelaForm" parameter="operacao" path="/parcela"	type="br.ufc.action.ParcelaAction"&gt;
		&lt;forward name="listNotaFiscal" path="/notaFiscal.do?operacao=listAll"&gt;
		&lt;/forward&gt;
	&lt;/action&gt;

	&lt;action name="formasPagamentoForm" parameter="operacao"	path="/formasPagamento" type="br.ufc.action.FormasPagamentoAction"&gt;
		&lt;forward name="prepareUpdate" path="/WEB-INF/pages/formasPagamento/formasPagamentoPrepareUpdate.jsp" /&gt;
		&lt;forward name="list" path="/WEB-INF/pages/formasPagamento/formasPagamento.jsp" /&gt;
	&lt;/action&gt;

	&lt;action name="caixaEntradaSaidaForm" parameter="operacao" path="/caixaEntradaSaida" type="br.ufc.action.CaixaEntradaSaidaAction"&gt;
		&lt;forward name="prepareSave" path="/WEB-INF/pages/caixaEntradaSaida/formEntradaSaida.jsp" /&gt;
	&lt;/action&gt;

	&lt;action name="caixaForm" parameter="operacao" path="/caixa" type="br.ufc.action.CaixaAction" &gt;
	&lt;/action&gt;

	&lt;action name="caixaContasReceberForm" parameter="operacao" path="/caixaContasReceber" type="br.ufc.action.ContasReceberAction"&gt;
		&lt;forward name="caixaContasReceber" path="/WEB-INF/pages/caixaContasReceber/caixaContasReceber.jsp" /&gt;
	&lt;/action&gt;

	&lt;action name="caixaContasPagarForm" parameter="operacao" path="/caixaContasPagar" type="br.ufc.action.ContasPagarAction"&gt;
		&lt;forward name="caixaContasPagar" path="/WEB-INF/pages/caixaContasPagar/caixaContasPagar.jsp" /&gt;
	&lt;/action&gt;
	
	&lt;action path="/relatorio" name="relatorioForm" type="br.ufc.action.RelatorioAction" parameter="operacao"&gt;
		&lt;forward name="relatorio" path="/WEB-INF/pages/relatorio/relatorio.jsp"&gt;&lt;/forward&gt;
	&lt;/action&gt;
	
	&lt;action path="/pedidoDespesa" name="pedidoDespesaForm" type="br.ufc.action.PedidoDespesaAction" parameter="operacao"&gt;
		&lt;forward name="itensPedidoDespesa" path="/itensPedidoDespesa.do?operacao=prepareSave"&gt;&lt;/forward&gt;
		&lt;forward name="acompanhamentoPD" path="/itensPedidoDespesa.do?operacao=prepareSave"&gt;&lt;/forward&gt;
	&lt;/action&gt;

	&lt;action path="/itensPedidoDespesa" name="itensPedidoDespesaForm" type="br.ufc.action.ItensPedidoDespesaAction" parameter="operacao"&gt;
		&lt;forward name="pedidoDespesa" path = "/pedidoDespesa.do?operacao=listAll"/&gt;
	&lt;/action&gt;

	&lt;action path="/acompanhamentoPD" name="acompanhamentoPDForm" type="br.ufc.action.AcompanhamentoPDAction" parameter="operacao"&gt;
		&lt;forward name="listPD" path="/pedidoDespesa.do?operacao=listAll"&gt;&lt;/forward&gt;
	&lt;/action&gt;

	
&lt;/action-mappings&gt;
&lt;controller /&gt;
&lt;message-resources parameter="br.ufc.i18n.application" /&gt;

&lt;!-- ========================= Validator plugin ================================= --&gt;
&lt;plug-in className="org.apache.struts.validator.ValidatorPlugIn"&gt;
	&lt;set-property property="pathnames"
		value="/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml" /&gt;
&lt;/plug-in&gt;

&lt;plug-in className="org.apache.struts.tiles.TilesPlugin"&gt;
	&lt;set-property property="definitions-config"
		value="/WEB-INF/tiles-defs.xml" /&gt;
&lt;/plug-in&gt;

</struts-config>
[/code]

[code]<%@ taglib uri=“http://java.sun.com/jsp/jstl/core” prefix=“c”%>

<div style=“display: table-column; float:left; clear: right; border: 1px solid #c1c1c1; width: 49%”>
<fieldset>
<legend>Vencimentos do dia</legend>

<table width=“100%” border=“0” cellspacing=“1”>
<tr bgcolor="#c1c1c1">
<th>Documento</th>
<th>Valor</th>
</tr>
<c:forEach items="${vencimentosDia}" var=“vencimentos”>
<tr bgcolor="#f1f1f1">
<td>${vencimentos.numeroNotaFiscal}</td>
<td align=“right”>${vencimentos.valorPrevista}</td>
</tr>
</c:forEach>
</table>
</fieldset>
</div>

<div style=“display: table-column; float:right; clear: right; border: 1px solid #c1c1c1; width: 49%”>
<fieldset>
<legend>Inadimplentes</legend>
<table width=“100%” border=“0” cellspacing=“1”>
<tr bgcolor="#c1c1c1">
<th width=“20%”>Documento</th>
<th width=“20%” align=“center”>Valor</th>
<th align=“center” width=“40%”>Data de Pagamento</th>
<th align=“center” width=“20%”>Dias em Atraso</th>
</tr>
<c:forEach items="${inadimplentes}" var=“inadimplentes”>
<tr bgcolor="#f1f1f1">
<td>${inadimplentes.numeroNotaFiscal}</td>
<td align=“right”>${inadimplentes.valorPrevista}</td>
<td align=“center”>${inadimplentes.dataPrevista}</td>
<td align=“center”>${inadimplentes.diasAtraso}</td>
</tr>
</c:forEach>
</table>
</fieldset>
</div>

[/code]

[code]package br.ufc.action;

import java.util.ArrayList;
import java.util.GregorianCalendar;
import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;

import br.com.ContasReceber;
import br.ufc.BO.ContasReceberBO;
import br.ufc.TO.ContasReceberTO;
import br.ufc.assembler.ContasReceberAssembler;

import com.converte.ConverteData;

public class PaginaInicial extends DispatchAction{

/*
 * Classe utilizada para listar os inadimplentes e  vencimentos do dia
 */

private GregorianCalendar calendar = new GregorianCalendar();

public ActionForward montarPaginaInicial(ActionMapping mapping, ActionForm form,
		HttpServletRequest request, HttpServletResponse response)
		throws Exception {
	List&lt;ContasReceber&gt; vencimentosDia = new ArrayList&lt;ContasReceber&gt;();
	List&lt;ContasReceber&gt; inadimplentes = new ArrayList&lt;ContasReceber&gt;(); 
	
	try{
		vencimentosDia = ((ContasReceberBO)ContasReceberBO.getInstance()).findAll(calendar);
		inadimplentes = ((ContasReceberBO)ContasReceberBO.getInstance()).findAllInadimplentes(calendar);

		final List&lt;ContasReceberTO&gt; vencimentosDiaTO = ContasReceberAssembler.getInstance().entity2EntityTO(vencimentosDia);
		final List&lt;ContasReceberTO&gt; inadimplentesTO = ContasReceberAssembler.getInstance().entity2EntityTO(inadimplentes);

		for (int i = 0; i &lt; inadimplentesTO.size(); i++) {
			final GregorianCalendar dataInadimplente = ConverteData.retornaData(inadimplentesTO.get(i).getDataPrevista());
			final long diasAtraso = ((calendar.getTimeInMillis()/(24*60*60*1000)) - (dataInadimplente.getTimeInMillis()/(24*60*60*1000)));

			inadimplentesTO.get(i).setDiasAtraso(String.valueOf(diasAtraso));
		}

		request.setAttribute(&quot;vencimentosDia&quot;, vencimentosDiaTO);
		request.setAttribute(&quot;inadimplentes&quot;, inadimplentesTO);
	} catch (Exception e) {
		System.out.println(&quot;Nenhum registro encontrado!!&quot;);
	}
	request.setAttribute(&quot;loadPage&quot;, &quot;/WEB-INF/pages/home.jsp&quot;);
	
	return mapping.findForward(&quot;index&quot;);
}

public ActionForward paginaInicial(ActionMapping mapping, ActionForm form,
		HttpServletRequest request, HttpServletResponse response)
		throws Exception {
	List&lt;ContasReceber&gt; vencimentosDia = new ArrayList&lt;ContasReceber&gt;();
	List&lt;ContasReceber&gt; inadimplentes = new ArrayList&lt;ContasReceber&gt;(); 
	
	try{
		vencimentosDia = ((ContasReceberBO)ContasReceberBO.getInstance()).findAll(calendar);
		inadimplentes = ((ContasReceberBO)ContasReceberBO.getInstance()).findAllInadimplentes(calendar);

		final List&lt;ContasReceberTO&gt; vencimentosDiaTO = ContasReceberAssembler.getInstance().entity2EntityTO(vencimentosDia);
		final List&lt;ContasReceberTO&gt; inadimplentesTO = ContasReceberAssembler.getInstance().entity2EntityTO(inadimplentes);

		for (int i = 0; i &lt; inadimplentesTO.size(); i++) {
			final GregorianCalendar dataInadimplente = ConverteData.retornaData(inadimplentesTO.get(i).getDataPrevista());
			final long diasAtraso = ((calendar.getTimeInMillis()/(24*60*60*1000)) - (dataInadimplente.getTimeInMillis()/(24*60*60*1000)));

			inadimplentesTO.get(i).setDiasAtraso(String.valueOf(diasAtraso));
		}

		request.setAttribute(&quot;vencimentosDia&quot;, vencimentosDiaTO);
		request.setAttribute(&quot;inadimplentes&quot;, inadimplentesTO);
	} catch (Exception e) {
		System.out.println(&quot;Nenhum registro encontrado!!&quot;);
	}
	request.setAttribute(&quot;loadPage&quot;, &quot;/WEB-INF/pages/home.jsp&quot;);
	
	return mapping.findForward(&quot;paginaInicial&quot;);
}

}
[/code]