s:ConvetEntity problem in Seam 2.2.2.Final
davidfdr.davidfdr.gmail.com Jul 23, 2011 11:11 PMI am getting "value is not valid" when using <h:selectOneMenu + entity + <s:convertEntity.
My entity has hashCode and equals methods implemented:
<h:selectOneMenu id="muniUsuario" value="#{usuarioHome.instance.municipio}" required="true">
<s:selectItems value="#{listaMunicipios}" var="municipioSelecionado" label="#{municipioSelecionado.noMunicipio}" noSelectionLabel=""/>
<a:support eventsQueue="queueUsuario" event="onchange" bypassUpdates="false" ajaxSingle="true"/> <s:convertEntity />
</h:selectOneMenu>
Rendered page:
....
<option value="0">Vitória da Conquista</option>
....
WHY VALUE IS 0????
package br.com.infosolo.controle.util;
import static org.jboss.seam.ScopeType.APPLICATION;
import java.io.Serializable;
import java.util.List;
import javax.persistence.EntityManager;
import javax.persistence.Query;
import org.jboss.seam.annotations.In;
import org.jboss.seam.annotations.Logger;
import org.jboss.seam.annotations.Name;
import org.jboss.seam.annotations.Scope;
import org.jboss.seam.annotations.Transactional;
import org.jboss.seam.annotations.Unwrap;
import br.com.infosolo.snit.entidades.Municipio;
@Name("listaMunicipios")
@Scope(APPLICATION)
public class ListaMunicipios implements Serializable {
@Logger
private org.jboss.seam.log.Log log;
/**
*
*/
private static final long serialVersionUID = -3902172130442786620L;
@In(value="entityManager")
EntityManager em;
List<Municipio> municipios;
@Unwrap
@Transactional
public List<Municipio> getMunicipios(){
if(municipios==null){
Query query = em.createNamedQuery("municipio.retornarTodosMunicipios");
municipios = query.getResultList();
for(Municipio municipio : municipios){
log.info("Municipio carregado: {0} - {1}", municipio.getNuMunicipio(), municipio.getNoMunicipio());
}
}
return municipios;
}
}
----
I think maybe a problem? This works in seam 2.2.1.Final......
My entity has hashCode and equals methods implemented:
<h:selectOneMenu id="muniUsuario" value="#{usuarioHome.instance.municipio}" required="true">
<s:selectItems value="#{listaMunicipios}" var="municipioSelecionado" label="#{municipioSelecionado.noMunicipio}" noSelectionLabel=""/>
<a:support eventsQueue="queueUsuario" event="onchange" bypassUpdates="false" ajaxSingle="true"/> <s:convertEntity />
</h:selectOneMenu>
Rendered page:
....
<option value="0">Vitória da Conquista</option>
....
WHY VALUE IS 0????
package br.com.infosolo.controle.util;
import static org.jboss.seam.ScopeType.APPLICATION;
import java.io.Serializable;
import java.util.List;
import javax.persistence.EntityManager;
import javax.persistence.Query;
import org.jboss.seam.annotations.In;
import org.jboss.seam.annotations.Logger;
import org.jboss.seam.annotations.Name;
import org.jboss.seam.annotations.Scope;
import org.jboss.seam.annotations.Transactional;
import org.jboss.seam.annotations.Unwrap;
import br.com.infosolo.snit.entidades.Municipio;
@Name("listaMunicipios")
@Scope(APPLICATION)
public class ListaMunicipios implements Serializable {
@Logger
private org.jboss.seam.log.Log log;
/**
*
*/
private static final long serialVersionUID = -3902172130442786620L;
@In(value="entityManager")
EntityManager em;
List<Municipio> municipios;
@Unwrap
@Transactional
public List<Municipio> getMunicipios(){
if(municipios==null){
Query query = em.createNamedQuery("municipio.retornarTodosMunicipios");
municipios = query.getResultList();
for(Municipio municipio : municipios){
log.info("Municipio carregado: {0} - {1}", municipio.getNuMunicipio(), municipio.getNoMunicipio());
}
}
return municipios;
}
}
----
I think maybe a problem? This works in seam 2.2.1.Final......