dataTable repete sempre ultimo registro do banco

Olá,

Estou utilizando JSF MyFaces em uma aplicacao web e nao consegui implementar uma dataTable q funcione, o meu Bean esta gerando uma lista de resultados (List) de uma tabela, mas na hora de mostrar os campos na dataTable a lista nao é iterada corretamente, mostrando sempre o ultimo row repetidamente.

Os codigos:

GeraListaBean.java

/*
 * GeraListaBean.java
 *
 * Created on June 29, 2006, 1:14 PM
 */

package db_beans;

import java.beans.*;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.List;

import util.DataBaseIO;

/**
 * @author Danilo
 */
public class GeraListaBean extends Object implements Serializable {
    //
    
    private ArrayList lista;
    
    private PropertyChangeSupport propertySupport;
    
    private DataBaseIO db_diario = new DataBaseIO();
    
    public GeraListaBean() {
        propertySupport = new PropertyChangeSupport(this);
        lista=new ArrayList();
    }
    
    public List getLista() {
        //        
        NoticiaBean noticia = new NoticiaBean();
        
        if(lista.size()==0) {
            //
            for (int i =1; i <4; i++) {
                //
                Integer aux = new Integer(i);
                String num = new String(aux.toString());
                
                noticia.setTitulo(db_diario.readDatabase("noticias_antigas", "titulo", num));
                noticia.setTexto(db_diario.readDatabase("noticias_antigas", "texto", num));
                
                System.out.println(this.getClass().toString() + "::getLista -> Adicionou: " );
                System.out.println(this.getClass().toString() + "::getLista -> Titulo: " + noticia.getTitulo());
                System.out.println(this.getClass().toString() + "::getLista -> Texto: " + noticia.getTexto());
                                
                lista.add(noticia);
            }
        }
        return lista;
    }
    
    public void addPropertyChangeListener(PropertyChangeListener listener) {
        propertySupport.addPropertyChangeListener(listener);
    }
    
    public void removePropertyChangeListener(PropertyChangeListener listener) {
        propertySupport.removePropertyChangeListener(listener);
    }
}

Codigo JSP:

<div id="paineldata" style="position:absolute; left:191px; top:730px; width:368px; height:220px; z-index:1; overflow: hidden; visibility: inherit;">
            <h:form>
            <t:dataTable  id="data"
                styleClass="scrollerTable"
                headerClass="standardTable_Header"
                footerClass="standardTable_Header"
                columnClasses="columna_abajoderecha,columna_abajoderecha,columna_abajo"
                var="noticias"
                value="#{geraListaBean.lista}"
                preserveDataModel="true"
                rows="10">
                <h:column>
                    <f:facet name="header">
                        <h:outputText value="Titulo" />
                    </f:facet>
                    <h:outputText value="#{noticias.titulo}" />
                </h:column>
                <h:column>
                    <f:facet name="header">
                        <h:outputText value="Texto" />
                    </f:facet>
                    <h:outputText value="#{noticias.texto}" />
                </h:column>
            </t:dataTable>
            </h:form>            
        </div>

Resutltado listado:

Os resultados listados deveriam ser
tiutlo1, titulo2, titulo3, texto1, texto2, texto3,
mas o ultimo registro aparece 3X repetidos.

id titulo texto

Agradeço qualquer ajuda;

oi dcereda

Antes de mais nada, quando você for colocar código aqui no fórum, coloque entre as tags “code”, beleza? Daí fica mais fácil do povo entender!

Você não está percorrendo a lista inteira? Talvez na hora de jogar no JSP, seja melhor se certificar de que ela não está no fim. Force para que ela volte ao primeiro registro.

Obrigado balarini,

Resolvido o problema, passou um erro na criação da lista.

Valeu