Value binding 'null'of UISelectItems?

Pesso to pegando uma pizaaaaaaa do JSF, Prometo que e 1 e ultimo em JSF…

Seguinte Tenho duas 2 classes:

1 Pessoa ----------------para varias ------------ N Mensalidades

No formulário de pagar mensalidade tenho um Combobox, que tem o nome da Pessoa que vai pagar…
Ai está meu problema não consigo pegar esse nome e listar no Combobox…

em baixo meu código:

mb

package br.gov.nutec.mb;

import java.io.Serializable;
import br.gov.nutec.facade.MensalidadeFacade;
import br.gov.nutec.facade.MensalidadeFacadeImpl;
import br.gov.nutec.facade.PessoaFacade;
import br.gov.nutec.facade.PessoaFacadeImpl;
import br.gov.nutec.modelo.Pessoa;
import br.gov.nutec.modelo.Mensalidade;
import java.util.List;
import java.util.ArrayList;

import javax.xml.ws.Action;
import javax.el.ELContext;
import javax.el.ELResolver;
import javax.faces.application.FacesMessage;
import javax.faces.component.UIComponent;
import javax.faces.component.UIParameter;
import javax.faces.context.FacesContext;
import javax.faces.event.ActionEvent;
import javax.faces.model.SelectItem;
import javax.faces.validator.ValidatorException;
import javax.faces.component.html.HtmlSelectOneMenu;

public class MensalidadeMB implements Serializable {

    private static long serialVersionUID = 1L;

    public static long getSerialVersionUID() {
        return serialVersionUID;
    }

    public static void setSerialVersionUID(long aSerialVersionUID) {
        serialVersionUID = aSerialVersionUID;
    }

    //=========================== classes importadas e relacionadas===========================================//
    private Mensalidade mensalidade = new Mensalidade();
    private Long idMensalidade;

    
    private Pessoa pessoa = new Pessoa();
    private Long id;
    private Long idPessoa;

    // pessoa para mensaliades no combomBox
    private HtmlSelectOneMenu pessoaSelecionado; // adiciona menu e import
      
    public HtmlSelectOneMenu getPessoaSelecionado() { //get e import
        return pessoaSelecionado;
    }
    // select para mensalidadeMB ================================================================== inicio para combo
    private MensalidadeMB pagaMensaldiadeMB() {
        FacesContext facesContext = FacesContext.getCurrentInstance();
        ELContext elContext = facesContext.getELContext();
        ELResolver resolver = facesContext.getApplication().getELResolver();
        Object c = resolver.getValue(elContext, null, "mensaldiadeMB");

        return (MensalidadeMB) c;
    }
    public List<SelectItem> getPessoaParaComboBox() { // pega uma pessoa para o selec
        List<SelectItem> lista = new ArrayList<SelectItem>();

        // usaremos o id como valor e o nome como label para os SelectItem.
        PessoaMB mb = pegaPessoaMB();
        for (Pessoa c : mb.getPessoas()) {
            lista.add(new SelectItem(c.getId().toString(), c.getNome())); // idPessoa
        }
        return lista;
    }
    //===============================================================================================fim para combo
    //=========================== classes importadas e relacionadas==================================FIM=========//

    public MensalidadeMB() {
        System.out.println(" >>>>>>>>>>>>>>>>>>>> Contrutor do Mensalidade_MB <<<<<<<<<<<<<<<<<<");
        if (this.mensalidade == null) {
            this.mensalidade = new Mensalidade();
        }
    }

    private PessoaMB pegaPessoaMB() {
        FacesContext facesContext = FacesContext.getCurrentInstance();
        ELContext elContext = facesContext.getELContext();
        ELResolver resolver = facesContext.getApplication().getELResolver();
        Object c = resolver.getValue(elContext, null, "pessoaMB");
        return (PessoaMB) c;
    }

    public List<SelectItem> GetPessoaSelecionado() {
        List<SelectItem> lista = new ArrayList<SelectItem>();
        PessoaMB mb = pegaPessoaMB();
        for (Pessoa p : mb.getPessoas()) {
            boolean add = lista.add(new SelectItem(p.getId().toString(), p.getNome()));
        }
        return lista;
    }
    //* *******************************FUNCOES BASICAS**********************************************************/

    public String save() {
        MensalidadeFacade MensalidadeService = new MensalidadeFacadeImpl();
        MensalidadeService.salva(this.getMensalidade());
        this.setMensalidade(new Mensalidade());
        //mensalidade
        PessoaFacade pessoaService = new PessoaFacadeImpl();
        this.setPessoa(new Pessoa());
        return "cadastraSucesso";
    }

    //salvando tudo 
    @SuppressWarnings("empty-statement")
    public void salva(Action event) {
        PessoaFacade pessoaService = new PessoaFacadeImpl();// instancia classe pessoa
        MensalidadeFacade mensalidadeService = new MensalidadeFacadeImpl();// instancia classe Mensalidade
        //Long idPessoa = Long.valueOf(getPessoaSelecionado().getValue().toString()); //campo idPessoa passa ser String
        Long idMensaldiade = Long.valueOf(pessoaSelecionado.getValue().toString());
        //Mensalidade p = this.setMensalidade();

        //Pessoa p = this.setPessoa()
        //Mensalidade.setPessoa.idPessoa(getId()Pessoa);
        mensalidadeService.atualiza(this.getMensalidade());
        //this.setMensalidade();
        //return "sucesso";

//               this.setPessoa(pessoaService.procura(this.getId()));
//               MensalidadeService.salva(this.getMensalidade());
//               Long id_cargo = Long.valueOf(pessoaSelecionado.getValue().toString());



      // Pessoa Mensalidade

        //Pessoa c = cargoDao.load(id_cargo);
     //   usuario.setCargo_cod_cargo(id_cargo);
        // System.out.println(cargo.getUsuario().getNome());



        this.setMensalidade(new Mensalidade());
        this.setPessoa(new Pessoa());
    }

    public String delete() {
        MensalidadeFacade MensalidadeService = new MensalidadeFacadeImpl();
        this.getMensalidade().setIdMensalidade(getIdMensalidade());
        MensalidadeService.remove(this.getMensalidade());
        this.setMensalidade(new Mensalidade());

        return "removeSucesso";
    }

    public String merge() {
        MensalidadeFacade MensalidadeService = new MensalidadeFacadeImpl();
        MensalidadeService.atualiza(this.getMensalidade());
        this.setMensalidade(new Mensalidade());

        return "atualizaSucesso";
    }

    public String load() {
        MensalidadeFacade MensalidadeService = new MensalidadeFacadeImpl();
        this.setMensalidade(MensalidadeService.procura(this.getIdMensalidade()));

        return "pesquisaSucesso";
    }

    //* *******************************FUNCOES BASICAS*******FIM***************************************************/
    //get set para pessoa
    public List<Pessoa> getPessoas() {
        PessoaFacade pessoaService = new PessoaFacadeImpl();
        return pessoaService.lista();
    }
    // fim get set pessoa

    public String list() {
        MensalidadeFacade MensalidadeService = new MensalidadeFacadeImpl();
        this.setMensalidade(MensalidadeService.procura(this.getId()));
        return "pesquisaSucesso";
    }
    //get set para mensalidades
        public List<Mensalidade> getMensalidades(){
		MensalidadeFacade MensalidadeService = new MensalidadeFacadeImpl();
		return MensalidadeService.lista();
	}

    public Mensalidade getMensalidade() {
        return mensalidade;
    }

    public void setMensalidade(Mensalidade mensalidade) {
        this.mensalidade = mensalidade;
    }

    public Long getIdMensalidade() {
        return idMensalidade;
    }

    public void setIdMensalidade(Long idMensalidade) {
        this.idMensalidade = idMensalidade;
    }

    public void setPessoaSelecionado(HtmlSelectOneMenu pessoaSelecionado) {
        this.pessoaSelecionado = pessoaSelecionado;
    }

    public Long getIdPessoa() {
        return idPessoa;
    }

    public void setIdPessoa(Long idPessoa) {
        this.idPessoa = idPessoa;
    }

    public Pessoa getPessoa() {
        return pessoa;
    }

    public void setPessoa(Pessoa pessoa) {
        this.pessoa = pessoa;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

   

}


xhtml formulario

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:a4j="http://richfaces.org/a4j"
      xmlns:rich="http://richfaces.org/rich">
    <style type="text/css">
        .ecol1 { vertical-align: top; padding-right : 25px }
        .ecol2 { vertical-align: top; border-left: #ACBECE 1px solid; padding-left : 10px }
        .rich-calendar-tool-btn{
            font-family: Arial, Verdana;
        }
    </style>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
        <link rel="StyleSheet" type="text/css" href="../style/estilos.css" media="screen" />
    </head>
    <a4j:keepAlive beanName="pessoaMB" />
    <ui:composition template="/template/template.xhtml">
        <ui:define name="corpo">
            <rich:tabPanel switchType="ajax">
                <rich:tab label="Cadastro de Mensalidade">
                    <a4j:form>
                        <rich:messages />
                        <legend>Cadastro de Pessoa</legend>
                        <a4j:region id="regiaoAjax">
                            <a4j:status id="sts">
                                <f:facet name="start">
                                    <h:graphicImage value="/images/ajax-loader_1.gif" />
                                </f:facet>
                            </a4j:status>
                        </a4j:region>
                        <!-- INICIA FORMULARIO-->
                        <fieldset>
                            <h:panelGrid columns="2" id="inputs">
                                <h:outputLabel for="matricula" value="Digite a Matrícula: " />
                                <h:inputText id="matriuclaInput" value="#{pessoaMB.pessoa.matricula}"  styleClass="inputPesquisa" >
                                    <a4j:commandButton  value="Pesquisar" action="#{pessoaMB.pesquisaByMatricula}" styleClass="inputPesquisaBtn2" reRender="inputs,fisicas,pessoas,listaumensalidade">
                                    </a4j:commandButton>
                                </h:inputText>

                             
<h:outputText value="pessoas"/>
<h:selectOneMenu>
<f:selectItems value="#(pagaMensalidadeMB.PessoaParaComboBox)"/>
</h:selectOneMenu>

                                <h:inputText id="idMensalidade" value="#{mensalidadeMB.mensalidade.idMensalidade}" styleClass="inputPesquisa3" size="4" >
                                </h:inputText>
                                <h:outputLabel for="Data Pagamento.:" value="Data Pagamento.: "  />
                                <rich:calendar id="data_pag" value="#{mensalidadeMB.mensalidade.data_pag}">
                                    <a4j:support event="ondateselected" />
                                </rich:calendar>
                                <h:outputLabel for="valor" value="Valor.: ($)"/>
                                <h:inputText id="valor" value="#{mensalidadeMB.mensalidade.valor}" styleClass="edit" size="30">
                                </h:inputText>
                            </h:panelGrid>
                               |<a4j:commandButton value="Inserir" action="#{mensalidadeMB.save}" status="sts" reRender="inputs,fisicas,pessoas,mensalidade,mensalidades" styleClass="botoes"/>
                            |<a4j:commandButton value="Deletar" action="#{mensalidadeMB.delete}" status="sts" reRender="inputs,fisicas,pessoas,mensalidade" styleClass="botoes"/>
                            |<a4j:commandButton value="Modificar" action="#{mensalidadeMB.merge}" status="sts" reRender="inputs,fisicas,pessoas,mensalidade" styleClass="botoes"/>
                            |<a4j:commandButton value="Listar" action="#{mensalidadeMB.list}" status="sts" reRender="inputs,fisicas,pessoas,mensalidade" styleClass="botoes"/>
                            |<a4j:commandButton value="Relatório" action="toCadastraMensalidade" status="sts" reRender="inputs,fisicas,pessoas,mensalidade" styleClass="botoes"/>
                            |<a4j:commandButton value="Menslidades" action="toCadastraMensalidade" immediate="true" styleClass="botoes"/>
                            |<a4j:commandButton value="Voltar" immediate="true" action="toIndex" styleClass="botoes"/>|
                        </fieldset>

                        <rich:messages />
                        <fieldset><legend>Atualização de Dados</legend>
                            <f:subview id="listauser">
                                <rich:dataTable value="#{pessoaMB.pessoas}" var="pessoa" rows="1" id="pessoas" width="100%" cellspacing="0" cellpadding="0" border="5">
                                    <h:column>
                                        <f:facet name="header">
                                            <h:outputText value="MATRÍCULA" />
                                        </f:facet>
                                        <h:outputText value="#{pessoa.matricula}" />
                                    </h:column>
                                    <h:column>
                                        <f:facet name="header">
                                            <h:outputText value="NOME" />
                                        </f:facet>
                                        <h:outputText value="#{pessoa.nome}" />
                                    </h:column>
                                    <h:column>
                                        <f:facet name="header">
                                            <h:outputText value="STATUS" />
                                        </f:facet>
                                        <h:outputText value="#{pessoa.status}" />
                                    </h:column>
                                    <h:column>
                                        <f:facet name="header">
                                            <h:outputText value="Excluir"/>
                                        </f:facet>
                                        <a4j:commandLink action="#{pessoaMB.delete}" status="sts" reRender="inputs,fisicas,pessoas" >
                                            <h:outputText value="Excluir"/>
                                            <f:setPropertyActionListener value="#{pessoa.id}" target="#{pessoaMB.id}" /> <!-- pega  o id -->
                                        </a4j:commandLink>
                                    </h:column>
                                    <h:column>
                                        <f:facet name="header">
                                            <h:outputText value="Editar"/>
                                        </f:facet>
                                        <a4j:commandLink reRender="inputs,fisicas,pessoas" >
                                            <h:outputText value="Editar"/>
                                            <f:setPropertyActionListener value="#{pessoa}" target="#{pessoaMB.pessoa}" />
                                        </a4j:commandLink>
                                    </h:column>
                                    <f:facet name="footer">
                                        <rich:datascroller />
                                    </f:facet>
                                </rich:dataTable>
                            </f:subview>
                            <f:subview id="listaumensalidade">
                                <rich:dataTable value="#{mensalidadeMB.mensalidades}" var="mensalidade" rows="5" id="mensalidades" width="100%" cellspacing="0" cellpadding="0" border="5">
                                    <h:column>
                                        <f:facet name="header">
                                            <h:outputText value="CÓDIGO" />
                                        </f:facet>
                                        <h:outputText value="#{mensalidade.idMensalidade}" />
                                    </h:column>
                                    <h:column>
                                        <f:facet name="header">
                                            <h:outputText value="DATA/PAGAMENTO" />
                                        </f:facet>
                                        <h:outputText value="#{mensalidade.data_pag}" />
                                    </h:column>
                                    <h:column>
                                        <f:facet name="header">
                                            <h:outputText value="VALOR" />
                                        </f:facet>
                                        <h:outputText value="#{mensalidade.valor}" />
                                    </h:column>
                                    <h:column>
                                        <f:facet name="header">
                                            <h:outputText value="Excluir"/>
                                        </f:facet>
                                        <a4j:commandLink action="#{mensalidadeMB.delete}" status="sts" reRender="inputs,mensalidade,mensalidades" >
                                            <h:outputText value="Excluir"/>
                                            <f:setPropertyActionListener value="#{mensalidade.idMensalidade}" target="#{mensalidadeMB.idMensalidade}" /> <!-- pega  o id -->
                                        </a4j:commandLink>
                                    </h:column>
                                    <h:column>
                                        <f:facet name="header">
                                            <h:outputText value="Editar"/>
                                        </f:facet>
                                        <a4j:commandLink reRender="inputs,mensalidade,mensalidades" >
                                            <h:outputText value="Editar"/>
                                            <f:setPropertyActionListener value="#{mensalidade}" target="#{mesalidadeMB.mensalidade}" />
                                        </a4j:commandLink>
                                    </h:column>
                                    <f:facet name="footer">
                                        <rich:datascroller />
                                    </f:facet>
                                </rich:dataTable>
                            </f:subview>
                        </fieldset>
                    </a4j:form>
                </rich:tab>
<!-- ****************************************************************** TAB LISTA DE PESSOAS**************************************************-->
                <rich:tab label="Lista de Pessoas">
                    <f:subview id="listauser">
                        <a4j:form>
                            <rich:messages />
                            <fieldset>
                                <a4j:region id="regiaoAjax">
                                    <a4j:status id="sts">
                                        <f:facet name="start">
                                            <h:graphicImage value="/images/ajax-loader_1.gif" />
                                        </f:facet>
                                    </a4j:status>
                                </a4j:region>
                                <h:panelGrid columns="2" id="inputs">
                                    <h:outputLabel for="nomeLabel" value="Digite o Nome: " />
                                    <h:inputText id="nomeInput" value="#{pessoaMB.pessoa.nome}" style=" width : 250px;"  styleClass="inputPesquisa">
                                        <a4j:commandButton value="Pesquisar" action="#{pessoaMB.pesquisaByNome}" reRender="pessoas">
                                        </a4j:commandButton>
                                    </h:inputText>
                                </h:panelGrid>
                            </fieldset>
                            <rich:dataTable value="#{pessoaMB.pessoas}" var="pessoa" rows="10" id="pessoas" width="100%" cellspacing="0" cellpadding="0" border="1">
                                <h:column>
                                    <f:facet name="header">
                                        <h:outputText value="MATRÍCULA" />
                                    </f:facet>
                                    <h:outputText value="#{pessoaMB.pessoa.matricula}" />
                                </h:column>
                                <h:column>
                                    <f:facet name="header">
                                        <h:outputText value="NOME" />
                                    </f:facet>
                                    <h:outputText value="#{pessoaMB.pessoa.nome}" />
                                </h:column>
                                <h:column>
                                    <f:facet name="header">
                                        <h:outputText value="E-MAIL" />
                                    </f:facet>
                                    <h:outputText value="#{pessoaMB.pessoa.email}" />
                                </h:column>
                                <h:column>
                                    <f:facet name="header">
                                        <h:outputText value="CPF" />
                                    </f:facet>
                                    <h:outputText value="#{pessoaMB.pessoa.cpf}" />
                                </h:column>
                                <h:column>
                                    <f:facet name="header">
                                        <h:outputText value="DATA NASC." />
                                    </f:facet>
                                    <h:outputText value="#{pessoaMB.pessoa.data_nasc}">
                                        <f:convertDateTime pattern="dd/MM/yyyy" />
                                    </h:outputText>
                                </h:column>
                                <h:column>
                                    <f:facet name="header">
                                        <h:outputText value="CELULAR" />
                                    </f:facet>
                                    <h:outputText value="#{pessoaMB.pessoa.celular}" />
                                </h:column>
                                <h:column>
                                    <f:facet name="header">
                                        <h:outputText value="Excluir"/>
                                    </f:facet>
                                    <a4j:commandLink action="#{pessoaMB.delete}" status="sts" reRender="inputs,fisicas,pessoas" >
                                        <h:outputText value="Excluir"/>
                                        <f:setPropertyActionListener value="#{pessoa.id}" target="#{pessoaMB.id}" />
                                    </a4j:commandLink>
                                </h:column>
                                <h:column>
                                    <f:facet name="header">
                                        <h:outputText value="Editar"/>
                                    </f:facet>
                                    <a4j:commandLink reRender="inputs,fisicas,pessoas" >
                                        <h:outputText value="Editar"/>
                                        <f:setPropertyActionListener value="#{pessoa}" target="#{pessoaMB.pessoa}" />
                                    </a4j:commandLink>
                                </h:column>

                                <f:facet name="footer">
                                    <rich:datascroller />
                                </f:facet>
                            </rich:dataTable>
                        </a4j:form>
                    </f:subview>
                </rich:tab>
                <!-- ******************************FIM************************************ TAB LISTA DE PESSOAS********************************************-->
                <rich:tab label="Filtros">
                </rich:tab>
                <rich:tab label="Relatórios">
                </rich:tab>
            </rich:tabPanel>
        </ui:define>
    </ui:composition>
</html>