Primeface - recuperar objeto

DataTable 3.3.1
JSF 2.1

Boa Tarde,

Estou tentando exibir um registro, porém quando eu passo o objeto do datatable ele não retorna nada. retorna apenas se eu pegar os atributos direto da classe.

segue o código bean


package Modelo;

import java.io.Serializable;
import java.util.List;

import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;

import DAO.AgenciaDAOMysql;
import Util.CadastroException;

@ManagedBean(name = "tableBean")
@SessionScoped
public class Agencia implements Serializable{

	private Integer codigo;
	private String descricao;
		
	private List<Agencia> consultarTodos;
	private Agencia mostrar;

	
	public Agencia getMostrar() {
		return mostrar;
	}

	public void setMostrar(Agencia mostrar2) throws CadastroException {
		codigo = mostrar2.codigo;
		descricao = mostrar2.descricao;
		sigla = mostrar2.sigla;
		fusoHorario = mostrar2.fusoHorario;
		mostrar = mostrar2;
		
	}

	private static AgenciaDAO dao;

	private static AgenciaDAO getDAO() {
		if (dao == null) {
			dao = new AgenciaDAOMysql();
		}

		return dao;

	}
	

	public List<Agencia> getConsultarTodos() throws CadastroException {

		return getDAO().ConsultarTodos();

	}
	
	public void Cadastrar() throws CadastroException {

		getDAO().Cadastrar(this);
			

	}
	
	public void Excluir() throws CadastroException {

		getDAO().Excluir(codigo);
			

	}
	
	
	public Integer getCodigo() {
		return codigo;
	}

	public void setCodigo(Integer codigo) {
		this.codigo = codigo;
	}

	public String getDescricao() {
		return descricao;
	}

	public void setDescricao(String descricao) {
		this.descricao = descricao;
	}

	
}

Consigo apenas visualizar os dados quando acesso por tableBean.codigo, na verdade preciso acessar através do tableBean.mostrar.codigo;

alguém sabe porque não apresenta os dados no mostrar?