JSF - Problema com selectOneMenu

0 respostas
V

Olá galera, com um problema e agradeceria muito se alguém me ajudasse a resolver.

Estou com um sistema de cadastro de Gado e o problema é quando adiciono um selectOneMenu, o botão de cadastro para de funcionar.
O primeiro selectOneMenu (do sexo) funciona perfeitamente e não interfere no botão de salvar, já o segundo interfere, ou seja, se eu tirar o segundo tudo volta a funcionar normalmente.

Obs.: Vi agora que está na sessão errada, por favor algum Administrador mude para a sessão de Desenvolvimento Web. Obg.
<?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:h="http://java.sun.com/jsf/html"  
    xmlns:f="http://java.sun.com/jsf/core"  
    xmlns:p="http://primefaces.org/ui">  
  
    <h:head>  
  
    </h:head>  
      
	<h:body>
		<h:form>
		<h:panelGrid columns="2" cellpadding="5">
		<p:outputLabel value="Sexo*:" />
        <p:selectOneMenu value="#{gadoBean.gado.sexo}">
        	<f:selectItems value="#{sexoView.sexos}"/>
        </p:selectOneMenu>
        
    	<p:outputLabel value="Raça*:" />
        <p:selectOneMenu value="#{gadoBean.gado.raca}">
        	<f:selectItems value="#{racaView.racas}"/>
        </p:selectOneMenu>
		<p:commandButton value="Cadastrar" action="#{gadoBean.salva}"/>
		</h:panelGrid>
		</h:form>
    </h:body>  
</html>

Abaixo segue alguns códigos que talvez os ajudem a me ajudar.

@ManagedBean
@SessionScoped
public class GadoBean implements Serializable {
	private static final long serialVersionUID = 1L;
	
	private Gado gado;
	
	@PostConstruct
	public void init(){
		this.gado = new Gado();
	}
	public GadoBean() {}
	
	public String salva(){
		System.out.println("Salvando");
		gado.salva();
		return "sucesso";
	}
	public Gado getGado() {
		return gado;
	}
	public void setGado(Gado gado) {
		this.gado = gado;
	}
}
@ManagedBean
@ViewScoped
public class SexoView implements Serializable{
	private static final long serialVersionUID = 1L;
	private Sexo[] sexos;
	
	public SexoView() { }
	public Sexo[] getSexos() {
		this.sexos = Sexo.values();
		return sexos;
	}
}
@ManagedBean
@ViewScoped
public class RacaView implements Serializable{
	private static final long serialVersionUID = 1L;
	private List<Raca> racas;

	public RacaView() {}
	
	public List<Raca> getRacas() {
		this.racas = new DAOFactory().buildRacaDAO().lista();
		return racas;
	}
}
Criado 17 de junho de 2015
Respostas 0
Participantes 1