[RESOLVIDO]Erro ao Recuperar dados de um rich:DataTable

Galera boa noite…

Eu tenho um duas tabelas, uma aluno e outra série. A tabela aluno recebe uma chave estrangeira da série sendo assim todo aluno tem que ter uma série.
O meu problema é o seguinte, tenho um metodo que seleciona todos os alunos no banco de dados, meu Controller pega esse select e joga dentro de uma ListDataModel e minha pagina xhtml recebe esse List em um rich:dataTable, repare que la esta o id da Série e a sua descricao, segue a imagem:

Eis meu problema, quando eu clico na imagem de edição aciona um metodo que se chama Conteudo dentro do meu MB e redireciona pra minha pagina de edição, segue o código.

public String Conteudo() {
		aluno = (Aluno) alunos.getRowData();
		System.out.println(serie.getIdSerie());
		return "editarAluno";
	}

porem que quando esses dados vao para minha pagina de edicao somente vai os dados dos alunos e meu id da Serie esta indo vazio, segue a imagem abaixo.

Codigo do Meu MB

package br.com.objetivo.mb;

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

import javax.faces.context.FacesContext;
import javax.faces.model.ListDataModel;
import javax.faces.model.SelectItem;
import javax.servlet.http.HttpSession;

import br.com.objetivo.dao.jdbc.AlunoJDBC;
import br.com.objetivo.dao.jdbc.SerieJDBC;
import br.com.objetivo.model.Aluno;
import br.com.objetivo.model.Serie;

public class AlunoMB {

	private Aluno aluno;
	private Serie serie;
	private ListDataModel alunos;
	private ListDataModel alunosDoc;
	private ListDataModel pesquisaAlunos;
	private SelectItem[] tdSeries;

	public void setSeries(ListDataModel alunos) {
		this.alunos = alunos;
	}

	public AlunoMB() {
		serie = new Serie();
		aluno = new Aluno();
	}
// ocultando get e set

	public ListDataModel getAlunos() {

		try {
			List alunosList = AlunoJDBC.getInstance().getAll();
			alunos = new ListDataModel(alunosList);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return alunos;

	}

	public String delete() {

		try {
			AlunoJDBC.getInstance().delete(aluno);
			return "listarAluno";
		} catch (Exception e) {
			e.printStackTrace();
		}
		return "paginaErro";

	}

	public String Conteudo() {
		aluno = (Aluno) alunos.getRowData();
		System.out.println(serie.getIdSerie());
		return "editarAluno";
	}

}

Trechos do código da minha classe JDBC

protected List getManyByCriteria(String sql) throws IOException {

		Connection conn = null;
		Statement st = null;
		ResultSet rs = null;
		List alista = new ArrayList();

		try {

			conn = getConnection();
			st = conn.createStatement();
			rs = st.executeQuery(sql);

			while (rs.next()) {

				Serie serie = getSerie(rs);

				Aluno aluno = new Aluno(new Integer(rs.getInt("idAluno")),
						rs.getString("nomeAluno"),
						rs.getString("naturalidade"), rs.getDate("dtnasc"),
						rs.getString("rg"), rs.getString("sexo"),
						rs.getString("situacao"), rs.getString("pai"),
						rs.getString("mae"), rs.getString("endereco"),
						rs.getString("numero"), rs.getString("bairro"),
						rs.getString("cidade"), rs.getString("uf"),
						rs.getString("foneCasa"), rs.getString("foneTrabalho"),
						rs.getString("foneCelular"), rs.getString("alunoRep"),
						rs.getString("mensalidade"),
						rs.getString("registroGeral"),
						rs.getString("declaTransf"),
						rs.getString("histEscolar"), rs.getString("regNasc"),
						rs.getString("foto"), rs.getString("nacional"), serie);

				alista.add(aluno);

			}

			return alista;

		} catch (Exception e) {
			throw new IOException("Erro", e);

		} finally {
			closeResources(conn, st, rs);
		}

	}

	public List getAll() throws IOException {

		String sql = "select a.idAluno, a.nomeAluno, a.naturalidade, a.dtnasc, a.rg, a.sexo, a.situacao, a.pai, a.mae,"
				+ " a.endereco, a.numero, a.bairro, a.cidade, a.uf, a.foneCasa, a.foneTrabalho, a.foneCelular, "
				+ "a.alunoRep, a.mensalidade, a.registroGeral, a.declaTransf, a.histEscolar, a.regNasc, a.foto, "
				+ "a.nacional, s.idSerie, s.nomeSerie "
				+ "from aluno a, serie s "
				+ "where a.idSerie = s.idSerie "
				+ "order by nomeSerie, nomeAluno";
	
		return this.getManyByCriteria(sql);
	}

galera espero que possam me ajudar. Vlw Abracos e Boa noite.

Na pagina da lista, você colocou o id serial como oculto?

não, está como outputText e ja tentei com o inputText e não vai também.

codigo da lista

<ui:define name="content">
		<h:form id="meuForm">
			<a4j:keepAlive beanName="alunoMB" />
			<rich:dataTable width="900" rows="10" id="alunos"
				value="#{alunoMB.alunos}" var="al">
				<f:facet name="header">
					<rich:columnGroup>
						<rich:column>
							<h:outputText styleClass="headerText" value="Nome" />
						</rich:column>
						<rich:column>
							<h:outputText styleClass="headerText" value="Serie" />
						</rich:column>
						<rich:column>
							<h:outputText styleClass="headerText" value="Mãe" />
						</rich:column>
						<rich:column>
							<h:outputText styleClass="headerText" value="Data Nascimento" />
						</rich:column>
						<rich:column>
							<h:outputText styleClass="headerText" value="Endereço" />
						</rich:column>
						<rich:column>
							<h:outputText styleClass="headerText" value="Ações" />
						</rich:column>
					</rich:columnGroup>
				</f:facet>
				<rich:column filterBy="#{al.nomeAluno}" filterEvent="onkeyup">
					<h:outputText value="#{al.nomeAluno}" />
				</rich:column>
				<rich:column>
					<h:inputText value="#{al.serie.idSerie}" />
				</rich:column>
				<rich:column>
					<h:outputText value="#{al.mae}" />
				</rich:column>
				<rich:column>
					<h:outputText value="#{al.dtnasc}">
						<f:convertDateTime pattern="dd/MM/yyyy"></f:convertDateTime>
					</h:outputText>
				</rich:column>
				<rich:column>
					<h:outputText value="#{al.endereco}" />
				</rich:column>
				<rich:column>
					<a4j:commandLink action="#{alunoMB.delete}" id="delete">
						<a4j:actionparam id="registro" name="modeloId"
							value="#{al.idAluno}" assignTo="#{alunoMB.aluno.idAluno}" />
						<h:graphicImage value="/imagens_facelets/imgMessage.jpg"
							style="border:0"></h:graphicImage>
					</a4j:commandLink>
					<rich:toolTip for="delete" value="Delete" />
					<h:outputLabel value="  "></h:outputLabel>
					<h:commandLink action="#{alunoMB.Conteudo}" id="edit">
						<h:graphicImage value="/imagens_facelets/edit_nova.jpg"
							style="border:0"></h:graphicImage>
					</h:commandLink>
					<rich:toolTip for="edit" value="Editar" />
				</rich:column>
				<f:facet name="footer">
					<rich:datascroller renderIfSinglePage="true" reRender="meuForm"
						ajaxSingle="true" />
				</f:facet>
			</rich:dataTable>

Já tentou como inputHidden ?

Sim, já tentei também, quando eu clico na imagem editar ele ja sai da lista com o idSerie como valor 0, eu acho que o erro esta no meu metodo que pega o getRowData ele so ta pegando o objeto aluno e nao to conseguindo trazer o serie junto, se eu setar o idSerie como 1 ele vai pra pagina de edicao com o valor 1.
ja tentei isso tambem aluno.setSerie(serie);

	public String Conteudo() {
		serie.setIdSerie(1);
   //aluno.setSerie(serie);
		aluno = (Aluno) alunos.getRowData();
		System.out.println(serie.getIdSerie());
		return "editarAluno";
	}

Faz um teste, escreva o valor o idSerie na tela, veja se ele está voltando da consulta ao banco de dados.

vlw jakefrog, mas resolvi de outra maneira, desse jeito que voce disse eu fiz o teste ele pega da pagina da consulta joga na seçao o codigo da serie mas nao vai pra pagina, entao eu usei f:setpropertylistener passando o parametro da série e no meu metodo no MB eu passei os alunos e funcionou vlw.