Ola a todos do Forum, estou a dias tentando resolver um problema do meu projeto, nao consigo salvar nada na tabela equipamentos usando agregacao
de objetos que na classe Cadequipamento possui um atributo do tipo Cadusuario que é a minha classe onde tenho o nome do usuario,
fiz um teste removendo a agregacao e funcionou certinho tudo adicionar,editar,remover perquisar mais nao e o certo, ao tentar salvar
recebi no console a msg :
[color=red]WARNING: There are some unhandled FacesMessages, this means not every FacesMessage had a chance to be rendered.
These unhandled FacesMessages are:
- “j_id_jsp_1462597661_1:cadusuario”: O valor não é uma opção válida.[/color]
Tentei colocar esse converterObjeto
[color=blue]public class ObjectConverter implements Converter {
@Override   
public Object getAsObject(FacesContext context, UIComponent component, String value) {   
    if (value != null) {   
        return component.getAttributes().get(value);   
    }   
    return null;   
}   
@Override   
public String getAsString(FacesContext context, UIComponent component, Object value) {   
    if (value != null   
            && !"".equals(value)) {   
        component.getAttributes().put(value.toString(), value);   
        return value.toString();   
    }   
    return "";   
} 
}
[/color]
E recebi outra msg:
[color=red]An Error Occurred:
org.apache.jasper.el.JspELException: /equipamento/equipamento.jsp(97,14) ‘#{cadequipamentoBean.cadequipamento.cadusuario}’ Cannot convert 14 of type class java.lang.Integer to class br.com.solicitacao.model.Cadusuario
Caused by:
org.apache.jasper.el.JspELException - /equipamento/equipamento.jsp(97,14) ‘#{cadequipamentoBean.cadequipamento.cadusuario}’ Cannot convert 14 of type class java.lang.Integer to class br.com.solicitacao.model.Cadusuario
[/color]
Pagina equipamento.jsp
Diretorio: WebContent\equipamento
Classe: br.com.solicitacao.control.CadequipamentoBean (Faces-config.xml) cadequipamentoBean.cadequipamento
Classe: br.com.solicitacao.control.CadusuarioBean (Faces-config.xml) cadusuarioBean.cadusuariositem
[color=blue]<h:messages showDetail="#{true}" showSummary="#{false}" />
<h:selectOneMenu id=“cadusuario” immediate=“true” converter=“converterObjeto”
  value="#{cadequipamentoBean.cadequipamento.cadusuario}">
  <f:selectItems value="#{cadusuarioBean.cadusuariositem}" />
</h:selectOneMenu>[/color]
Classe da SelectItem: br.com.solicitacao.control.cadusuarioBean
Metodo: cadusuariositem
[color=darkblue]public List listausuarios() throws SQLException {
List<SelectItem> cadusuariosList = new ArrayList<SelectItem>();
PreparedStatement stmt = connection.prepareStatement("SELECT * FROM cad_usuario"); 
ResultSet rs = stmt.executeQuery(); 
cadusuariosList.add(new SelectItem("","-Selecionar Usuario-")); 
while (rs.next()) {
  // adicionando o objeto à lista
 cadusuariosList.add(new SelectItem(rs.getInt("id_usuario"), rs.getString("nm_usuario"))); 
}
rs.close();
stmt.close();
return cadusuariosList;
} [/color]
Minha Classe EquipamentoDAO
[color=blue]public String adiciona(Cadequipamento cadequipamento) throws SQLException {
	    
	
PreparedStatement stmt = this.connection.prepareStatement("REPLACE INTO cad_equipamento(id_equipamento,nm_equipamento,id_usuario) values (?, ?, ?)");
		// seta os valores cadusuario
		stmt.setInt(1,cadequipamento.getEqId());
		stmt.setString(2,cadequipamento.getEqNome());
		stmt.setInt(3,cadequipamento.getCadusuario().getUsId());
		// executa
		stmt.execute();
		stmt.close();
	    return "";
	
}
[/color]
Desde já agradeço a todos
Márcio Henrique
Fortaleza - CE