Problema com java.lang.ClassCastException num <rich:dataTable/>

Fala pessoal!!

Seguinte: tava fazendo um rich:dataTable/, e comecei a ter problema com o DataModel. Fiz até um post aki no fórum.

Aí parece q deu certo na hr de construir a dataTable, mas qdo manda pra página q ela tá dá esse erro:

java.lang.ClassCastException: org.ajax4jsf.model.SequenceRange cannot be cast to org.richfaces.model.ScrollableTableDataRange

Andei dando uma revirada no Google, e vi que isso acontece qdo tento passar um valor a um tipo de dado diferente, tô certo???

Só q não sei onde q tá dando esse erro, pq ele não mostra a linha da página q retornou o erro (quer dizer, nem sei se ele chega a entrar na página).

Então qria ver com vcs, alguém já teve esse tipo de erro???

Se precisarem do código me fala.

Vlw pessoal!!

O ideal é olha o código, mas o erro ClassCastException deve estar certo. Algum cast vc não deve estar fazendo no seu controlador, acredito que isso não tem a ver com o JSP, ou na entidade isso pode acontecer se vc trocou na declaração da variavel o tipo dela e não trocou nos gets e sets.

Bão, aí eu num sei, pq nem mexi com isso.

Esse é o método q chama a datatable:

	public String manda() {
		DaoFactory daoFactory = new DaoFactory();
		try {
			Dao<Fluxo> dao = daoFactory.getFluxoDao();
			daoFactory.beginTransaction();
			dataList = dao.listaPorData(getDataIn(), getDataFim());
			daoFactory.commit();
			setDataModel(new ListDataModel(dataList));
			setRenderedColumns();
		} catch (HibernateException e) {
			e.printStackTrace();
			daoFactory.rollback();
			daoFactory.close();
			return "falha";
		}
		daoFactory.close();
		return "sucesso";
	}

O DataModel e a lista:

	private List<Fluxo> dataList;
	private DataModel dataModel;

	public DataModel getDataModel() {
		return dataModel;
	}

	public void setDataModel(DataModel dataModel) {
		this.dataModel = dataModel;
	}

	public List<Fluxo> getDataList() {
		return dataList;
	}

	public void setDataList(List<Fluxo> dataList) {
		this.dataList = dataList;
	}

O dataTable:

	<rich:dataTable value="#{fluxoController.dataModel}" var="fluxo">
		<rich:column>
            <f:facet name="header">
				<h:outputText value="#{msg['caixa.data']}" />
			</f:facet>
			<h:outputText value="#{fluxo.data}">
				<f:convertDateTime pattern="dd/MM/yyyy"/>
			</h:outputText>
		</rich:column>
		<rich:column rendered="#{fluxoController.dado1}">
            <f:facet name="header">
				<h:outputText value="#{msg['caixa.dado1']}" />
			</f:facet>
			<h:outputText value="#{fluxo.dado1}">
				<f:convertNumber minFractionDigits="2" maxFractionDigits="2"
				groupingUsed="false" type="currency" currencySymbol="R$"/>
			</h:outputText>
		</rich:column>
		(...)
	</rich:dataTable>

Se precisar de mais alguma coisa me fala.

Vlw!!!

Tive um problema parecido. No meu caso o problema estava nos imports. Cruzei implementações de pacotes diferentes.

Eu estava populando um javax.faces.model.DataModel com um org.richfaces.model.impl.ListDataModel ao invés de um javax.faces.model.ListDataModel.
Provavelmente a implementação do richFaces extende a do faces, por isso não deu erro de compilação, só de execução.

igorbrites , realmente o pdrvaz está certo. Tive este problema agora mesmo. A mensagem está correta, o cast está sendo feito errado pois o import é que está errado.

Só alterar de import org.richfaces.model.impl.ListDataModel;

para

import javax.faces.model.ListDataModel;

att.