Problema com meu s:selectOneMenu

Bom dia,

estou com um problema com meu selectOneMenu, a principi tudo estaria funcionando corretamente, já pesquisae bastante na internet sobre isso e meus códigos estão iguais aos da internet por ai
vou postar aqui porque deve ser um problema diferente disso
se voces puderem me ajudar eu agradeço

meu xhtml

<s:decorate id="modSubPrcField" template="../../layout/edit.xhtml">
        <ui:define name="label">#{msgs['label.modelo.subprocesso']}</ui:define>
        <h:selectOneMenu value="#{modeloAtributoControle.modSubPrc}" style="width:150px" required="true">
                <s:selectItems var="item" value="#{modeloAtributoControle.listaModSubPrc}" label="#{item.nmModSubPrc}" noSelectionLabel="Selecione..."/>
                <s:convertEntity/>
        </h:selectOneMenu>
</s:decorate>

meu controle

@SuppressWarnings("serial")
@Name("modeloAtributoControle")
@Scope(ScopeType.CONVERSATION)
public class MantemModeloAtributoControle extends ControleBB<ModAtb, ModeloAtributoBO> {

@In (create = true, required = false)
        private ModSubPrc modSubPrc;

private List<ModSubPrc> listaModSubPrc;

public void setModSubPrc(ModSubPrc modSubPrc) {
                this.modSubPrc = modSubPrc;
        }

        public ModSubPrc getModSubPrc() {
                return modSubPrc;
        }

public void setListaModSubPrc(List<ModSubPrc> listaModSubPrc) {
	this.listaModSubPrc = listaModSubPrc;
}

public List<ModSubPrc> getListaModSubPrc() {
	listaModSubPrc = getModSubPrcBo().consultar();//Populate the List with objects ModSubPrc, this part is working
	return listaModSubPrc;
}

}

galera esqueci de colocar minha entidade e dizer que estou usando Jboss Seam com JSF

/*
 * ModSubPrc.java
 * 
 * Data de criação: 01/03/2011
 *
 * Desenvolvido por C1125600 - Tiago Trindade Stangarlin
 */
 
package br.com.bb.qgd.entidade;

import java.io.Serializable;

import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;

import org.jboss.seam.annotations.Name;

import br.com.bb.entidade.EntidadeBB;

/**
 * <p>Title: ModSubPrc</p>
 * <p>Description: Classe que representa a entidade persistente <code>MOD_SUB_PRC</code>.</p>
 * <br><b>Company:</b> QGD
 * @author C1125600 - Tiago Trindade Stangarlin
 * @version 1.0
 */
@javax.persistence.Entity
@javax.persistence.Table(schema="QGD", name = "MOD_SUB_PRC")
@Name("modSubPrc")
public class ModSubPrc implements EntidadeBB {

	/** Primary key. */
	@javax.persistence.Id
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	@javax.persistence.Column(name = "CD_MOD_SUB_PRC")
	private java.lang.Integer id;

	/** Regular field. */
	@javax.persistence.Column(name = "NM_MOD_SUB_PRC", 
							  nullable = false, 
							  length = 50, 
							  unique = false)
	private java.lang.String nmModSubPrc;

	@javax.persistence.Column(name = "QT_DD_PZ_PRVT", 
							  nullable = false, 
							  length = 5, 
							  unique = false)
	private java.lang.Short qtDdPzPrvt;

	/** Association. */
	@javax.persistence.ManyToOne
	@javax.persistence.JoinColumns({
		@javax.persistence.JoinColumn(
			name = "CD_TIP_MOD_SUB_PRC"		)
	})
	private br.com.bb.qgd.entidade.TipModSubPrc tipModSubPrc;

	@javax.persistence.OneToMany(mappedBy = "modSubPrc")
	private java.util.Set<SubPrc> subPrcs;

	@javax.persistence.OneToMany(mappedBy = "modSubPrc")
	private java.util.Set<ModAtb> modAtbs;

	@javax.persistence.OneToMany(mappedBy = "modSubPrc")
	private java.util.Set<ModSubPrcModPrc> modSubPrcModPrcs;

	@javax.persistence.ManyToOne
	@javax.persistence.JoinColumns({
		@javax.persistence.JoinColumn(
			name = "CD_PRFL_ACSS"		)
	})
	private br.com.bb.qgd.entidade.PrflAcssTla prflAcssTla;

	/**
	 * @return O valor do atributo id
	 */
	public java.lang.Integer getId() {
		return id;
	}

	/**
	 * @param cdModSubPrc atribui um valor ao atributo id
	 */
	public void setId(java.lang.Integer cdModSubPrc) {
		this.id = cdModSubPrc;
	}

	/**
	 * @return O identificador desta entidade
	 *
	 * @see br.com.politec.alp01.arquitetura.entidade.Entidade#getIdentificador()
	 */
	public Serializable getIdentificador() {
		return getId();
	}
	
	/**
	 * @return O valor do atributo nmModSubPrc
	 */
	public java.lang.String getNmModSubPrc() {
		return nmModSubPrc;
	}

	/**
	 * @param _nmModSubPrc atribui um valor 
	 * 		ao atributo nmModSubPrc
	 */
	public void setNmModSubPrc(
			java.lang.String _nmModSubPrc) {
		this.nmModSubPrc = _nmModSubPrc;
	}
	
	/**
	 * @return O valor do atributo qtDdPzPrvt
	 */
	public java.lang.Short getQtDdPzPrvt() {
		return qtDdPzPrvt;
	}

	/**
	 * @param _qtDdPzPrvt atribui um valor 
	 * 		ao atributo qtDdPzPrvt
	 */
	public void setQtDdPzPrvt(
			java.lang.Short _qtDdPzPrvt) {
		this.qtDdPzPrvt = _qtDdPzPrvt;
	}
	
	/**
	 * @return O valor do atributo tipModSubPrc;
	 */
	public br.com.bb.qgd.entidade.TipModSubPrc getTipModSubPrc() {
		if(tipModSubPrc==null){
			tipModSubPrc = new TipModSubPrc();
		}
		return tipModSubPrc;
	}

	/**
	 * @param _tipModSubPrc atribui um valor 
	 * 		ao atributo this.tipModSubPrc
	 */
	public void setTipModSubPrc(
			br.com.bb.qgd.entidade.TipModSubPrc _tipModSubPrc) {
		this.tipModSubPrc = _tipModSubPrc;
	}
	
	/**
	 * @return O valor do atributo subPrcs;
	 */
	public java.util.Set<SubPrc> getSubPrcs() {
		return subPrcs;
	}

	/**
	 * @param _subPrcs atribui um valor 
	 * 		ao atributo this.subPrcs
	 */
	public void setSubPrcs(
			java.util.Set<SubPrc> _subPrcs) {
		this.subPrcs = _subPrcs;
	}
	
	/**
	 * @return O valor do atributo modAtbs;
	 */
	public java.util.Set<ModAtb> getModAtbs() {
		return modAtbs;
	}

	/**
	 * @param _modAtbs atribui um valor 
	 * 		ao atributo this.modAtbs
	 */
	public void setModAtbs(
			java.util.Set<ModAtb> _modAtbs) {
		this.modAtbs = _modAtbs;
	}
	
	/**
	 * @return O valor do atributo modSubPrcModPrcs;
	 */
	public java.util.Set<ModSubPrcModPrc> getModSubPrcModPrcs() {
		return modSubPrcModPrcs;
	}

	/**
	 * @param _modSubPrcModPrcs atribui um valor 
	 * 		ao atributo this.modSubPrcModPrcs
	 */
	public void setModSubPrcModPrcs(
			java.util.Set<ModSubPrcModPrc> _modSubPrcModPrcs) {
		this.modSubPrcModPrcs = _modSubPrcModPrcs;
	}
	
	/**
	 * @return O valor do atributo prflAcssTla;
	 */
	public br.com.bb.qgd.entidade.PrflAcssTla getPrflAcssTla() {
		if(prflAcssTla==null){
			prflAcssTla = new PrflAcssTla();
		}
		return prflAcssTla;
	}

	/**
	 * @param _prflAcssTla atribui um valor 
	 * 		ao atributo this.prflAcssTla
	 */
	public void setPrflAcssTla(
			br.com.bb.qgd.entidade.PrflAcssTla _prflAcssTla) {
		this.prflAcssTla = _prflAcssTla;
	}
	
	@Override
	public int hashCode() {
		// TODO Auto-generated method stub
		return super.hashCode();
	}
	
	@Override
	public boolean equals(Object obj) {
		// TODO Auto-generated method stub
		return super.equals(obj);
	}
	
}