[RESOLVIDO] Problema com Managed Bean (JSF 2) ao cadastrar no banco

22 respostas
F
Olá a todos! Estou com um problema ao cadastrar no mysql com o meu managed bean. Aqui é a mensagem de erro:
Grave: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Column 'nome' cannot be null
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
	at com.mysql.jdbc.Util.handleNewInstance(Util.java:409)
	at com.mysql.jdbc.Util.getInstance(Util.java:384)
	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1041)
	at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3566)
	at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3498)
	at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1959)
	at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2113)
	at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2568)
	at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2113)
	at com.mysql.jdbc.PreparedStatement.execute(PreparedStatement.java:1364)
	at sonic.action.usuario.UsuarioBean.criarUsuario(UsuarioBean.java:98)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at javax.el.BeanELResolver.invokeMethod(BeanELResolver.java:779)
	at javax.el.BeanELResolver.invoke(BeanELResolver.java:528)
	at javax.el.CompositeELResolver.invoke(CompositeELResolver.java:257)
	at com.sun.el.parser.AstValue.invoke(AstValue.java:248)
	at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:302)
	at org.jboss.weld.util.el.ForwardingMethodExpression.invoke(ForwardingMethodExpression.java:39)
	at org.jboss.weld.el.WeldMethodExpression.invoke(WeldMethodExpression.java:50)
	at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)
	at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88)
	at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
	at javax.faces.component.UICommand.broadcast(UICommand.java:315)
	at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:794)
	at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1259)
	at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:593)
	at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1542)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:281)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
	at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:161)
	at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:331)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:231)
	at com.sun.enterprise.v3.services.impl.ContainerMapper$AdapterCallable.call(ContainerMapper.java:317)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:195)
	at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:849)
	at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:746)
	at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1045)
	at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:228)
	at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
	at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
	at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
	at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
	at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
	at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
	at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
	at java.lang.Thread.run(Thread.java:722)
Aqui é o managed bean:
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package sonic.action.usuario;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.ejb.EJB;
import javax.inject.Named;
import javax.enterprise.context.Dependent;
import javax.faces.application.FacesMessage;
import javax.faces.context.FacesContext;
import sonic.action.grupo.GrupoBean;
import sonic.action.professor.ProfessorBean;
import sonic.model.entities.Grupo;
import sonic.model.entities.Usuario;
import sonic.model.repositories.ConnectionFactory;

/**
 *
 * @author Felipe
 */
@Named(value = "usuarioBean")
@Dependent
public class UsuarioBean {

    private String nome;
    private String senha;
    private Grupo groupid;
    private Usuario usuario;
    

    public Usuario getUsuario() {
        return usuario;
    }

    public void setUsuario(Usuario usuario) {
        this.usuario = usuario;
    }

    public Grupo getGroupid() {
        return groupid;
    }

    public void setGroupid(Grupo groupid) {
        this.groupid = groupid;
    }

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public String getSenha() {
        return senha;
    }

    public void setSenha(String senha) {
        this.senha = senha;
    }

    public String criarUsuario() {
        System.out.println(">>>>>>>>>>>>>Entrou aqui!!!!<<<<<<");
        System.out.println(nome);
        System.out.println(senha);
        String retorno = null;
        try {
            FacesMessage msg;
            Connection con = ConnectionFactory.GetConnection();
            String sql = "INSERT INTO Usuario VALUES (nome = ?, senha = ?, groupid = ?)";
            // cria um preparedStatement  
            PreparedStatement stmt = con.prepareStatement(sql);

            stmt.setString(1, nome);
            stmt.setString(2, senha);
            stmt.setObject(3, groupid);

            System.out.println(sql);

            stmt.execute();

            stmt.close();
            con.close();

            retorno = "index?faces-redirect=true";
            msg = new FacesMessage(FacesMessage.SEVERITY_INFO, "Usuario Cadastrado com Sucesso", "");
            FacesContext.getCurrentInstance().addMessage(null, msg);
            return retorno;
        } catch (SQLException ex) {
            Logger.getLogger(UsuarioBean.class.getName()).log(Level.SEVERE, null, ex);
            return retorno;
        }
    }

    public String editarUsuario() {
        FacesMessage msg;
        String retorno = "listar?faces-redirect=true";
        try {
            Connection con = ConnectionFactory.GetConnection();
            String sql = "UPDATE Usuario SET nome = ?, senha = ?, groupid = ? WHERE nome = ?";

            // cria um preparedStatement  
            PreparedStatement stmt = con.prepareStatement(sql);
            stmt.setString(1, usuario.getNome());
            stmt.setString(2, usuario.getSenha());
            stmt.setObject(3, usuario.getGroupid());
            stmt.setString(4, usuario.getNome());

            System.out.println("Entrou aqui!!!!");

            stmt.executeUpdate();

            //fecha a conexão
            stmt.close();
            con.close();

            msg = new FacesMessage(FacesMessage.SEVERITY_INFO, "Usuario Editado com Sucesso", "");
            FacesContext.getCurrentInstance().addMessage(null, msg);
            return retorno;
        } catch (SQLException ex) {
            Logger.getLogger(ProfessorBean.class.getName()).log(Level.SEVERE, null, ex);
            return retorno;
        }
    }

    public String deletarUsuario() {
        String retorno = "listar";
        FacesMessage msg;
        try {
            Connection con = ConnectionFactory.GetConnection();
            String sql = "DELETE FROM Usuario WHERE nome = ?";

            // cria um preparedStatement  
            PreparedStatement stmt = con.prepareStatement(sql);
            stmt.setString(1, nome);

            System.out.println("Entrou aqui!!!!");

            stmt.execute();

            //fecha a conexão
            stmt.close();
            con.close();

            msg = new FacesMessage(FacesMessage.SEVERITY_INFO, "Usuario Removido com Sucesso", "");
            FacesContext.getCurrentInstance().addMessage(null, msg);

            return retorno;
        } catch (SQLException ex) {
            Logger.getLogger(ProfessorBean.class.getName()).log(Level.SEVERE, null, ex);
            return retorno;
        }
    }

    public List<Usuario> listar() {
        ArrayList<Usuario> usuarios = new ArrayList<Usuario>();
        try {
            Connection con = ConnectionFactory.GetConnection();
            String sql = "SELECT * FROM Usuario";

            // cria um preparedStatement  
            PreparedStatement stmt = con.prepareStatement(sql);

            // executa o select
            ResultSet rs = stmt.executeQuery();
            System.out.println(rs.toString());
            
            // itera no ResultSet
            while (rs.next()) {
                System.out.println(rs.getString("nome"));
                System.out.println(rs.getString("senha"));
                System.out.println(rs.getObject("groupid"));
                System.out.println("----");
                Usuario u = new Usuario();
                u.setNome(rs.getString("nome"));
                u.setSenha(rs.getString("senha"));                
                usuarios.add(u);
            }
            //fecha a conexão
            stmt.close();
            con.close();

            return usuarios;
        } catch (SQLException ex) {
            Logger.getLogger(GrupoBean.class.getName()).log(Level.SEVERE, null, ex);
            return usuarios;
        }
    }

    /**
     * Creates a new instance of UsuarioBean
     */
    public UsuarioBean() {
    }
}
Aqui é a página xhtml:
<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                template="./../modeloPrincipal.xhtml"
                xmlns:p="http://primefaces.prime.com.tr/ui"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:h="http://java.sun.com/jsf/html">

    <ui:define name="content">   
        <p:growl id="growl" showDetail="true" life="3000" /> 
        <h:form id="cadastro">
            <h:panelGrid columns="2" cellpadding="5">
                <h:outputText value="Nome do Usuário:" />
                <h:inputText id="name" title="Digite o nome de usuário a ser criado" value="#{usuarioBean.nome}"/>

                <h:outputText value="Senha do Usuário:" />
                <h:inputText id="password" title="Digite senha do usuário" value="#{usuarioBean.senha}"/>


                <h:outputText value="Grupo do Usuário:" />
                <h:selectOneMenu value="#{usuarioBean.groupid}">  
                    <f:converter converterId="usuarioConverter" />
                    <f:selectItem itemLabel="Selecione" itemValue="" />  
                    <f:selectItems value="#{grupoBean.listar()}" var="grupo" itemLabel="#{grupo.nome}" itemValue="#{grupo.groupid}"/>  
                </h:selectOneMenu>

                <h:commandButton action="#{usuarioBean.criarUsuario()}" value="Salvar"/>
            </h:panelGrid>
        </h:form>
    </ui:define>

</ui:composition>

Aparentemente tudo está certo, mas não está funcionando :(
Vocês sabem o que pode ser?

Desculpem se o código está um pouco bagunçado. Quando funcionar eu organizo ele :D

Agradeço a ajuda de todos!

22 Respostas

F

Olá, acredito ser o seu SQL que está errado:

correto:

INSERT INTO Usuario(nome, senha, groupid) VALUES (?,?,?);
A

Felipe,

A msg de erro esta bem claro …

com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Column ‘nome’ cannot be null

vc esta tentando gravar um usuário.nome = null no banco de dados causando o erro de integridade pois em sua tabela o nome não deve ser nulo …

Outra coisa no seu código não vi nenhum construtor recebendo parametro … nome, senha por exemplo …

A

Felipe,

A msg de erro esta bem claro …

com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Column ‘nome’ cannot be null

vc esta tentando gravar um usuário.nome = null no banco de dados causando o erro de integridade pois em sua tabela o nome não deve ser nulo …

Outra coisa no seu código não vi nenhum construtor recebendo parametro … nome, senha por exemplo …

F
fdcarli:
Olá, acredito ser o seu SQL que está errado:

correto:

INSERT INTO Usuario(nome, senha, groupid) VALUES (?,?,?);

Ops, nem tinha visto essa linha :lol: Obrigado

Mas ainda está apresentando o erro:
Informações: >>>>>>>>>>>>>Entrou aqui!!!!<<<<<<
Informações: null
Informações: null
Informações: INSERT INTO Usuario(nome, senha, groupid) VALUES (?,?,?); 
Grave: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Column 'nome' cannot be null
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
	at com.mysql.jdbc.Util.handleNewInstance(Util.java:409)
	at com.mysql.jdbc.Util.getInstance(Util.java:384)
	at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1041)
	at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3566)
	at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3498)
	at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1959)
	at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2113)
	at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2568)
	at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2113)
	at com.mysql.jdbc.PreparedStatement.execute(PreparedStatement.java:1364)
	at sonic.action.usuario.UsuarioBean.criarUsuario(UsuarioBean.java:90)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:601)
	at javax.el.BeanELResolver.invokeMethod(BeanELResolver.java:779)
	at javax.el.BeanELResolver.invoke(BeanELResolver.java:528)
	at javax.el.CompositeELResolver.invoke(CompositeELResolver.java:257)
	at com.sun.el.parser.AstValue.invoke(AstValue.java:248)
	at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:302)
	at org.jboss.weld.util.el.ForwardingMethodExpression.invoke(ForwardingMethodExpression.java:39)
	at org.jboss.weld.el.WeldMethodExpression.invoke(WeldMethodExpression.java:50)
	at com.sun.faces.facelets.el.TagMethodExpression.invoke(TagMethodExpression.java:105)
	at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:88)
	at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:102)
	at javax.faces.component.UICommand.broadcast(UICommand.java:315)
	at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:794)
	at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1259)
	at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:81)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:593)
	at org.apache.catalina.core.StandardWrapper.service(StandardWrapper.java:1542)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:281)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
	at org.apache.catalina.core.StandardPipeline.doInvoke(StandardPipeline.java:655)
	at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:595)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:161)
	at org.apache.catalina.connector.CoyoteAdapter.doService(CoyoteAdapter.java:331)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:231)
	at com.sun.enterprise.v3.services.impl.ContainerMapper$AdapterCallable.call(ContainerMapper.java:317)
	at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:195)
	at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:849)
	at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:746)
	at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1045)
	at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:228)
	at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
	at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
	at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
	at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
	at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
	at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
	at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
	at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
	at java.lang.Thread.run(Thread.java:722)

É como se ele não estivesse passando os valores da página para o Managed Bean...

Sabe o que pode ser?

A

Felipe,

A msg de erro esta bem claro …

com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Column ‘nome’ cannot be null

vc esta tentando gravar um usuário.nome = null no banco de dados causando o erro de integridade pois em sua tabela o nome não deve ser nulo …

Outra coisa no seu código não vi nenhum construtor recebendo parametro … nome, senha por exemplo …

R

Kd o código da página que preenche os dados??

F

Aleksandro:
Felipe,

A msg de erro esta bem claro …

com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Column ‘nome’ cannot be null

vc esta tentando gravar um usuário.nome = null no banco de dados causando o erro de integridade pois em sua tabela o nome não deve ser nulo …

Outra coisa no seu código não vi nenhum construtor recebendo parametro … nome, senha por exemplo …

Mas eu passo valores na página xhtml.
E quando eu faço um

System.out.println(nome); System.out.println(senha);
eles vem nulos…

Nos outros managed bean que funcionam, eu fiz desse jeito. Sem construtor que receba parametros. Se eu não me engano o JSF cuida de ‘tudo’

F
raf4ever:
Kd o código da página que preenche os dados??
&lt;?xml version='1.0' encoding='UTF-8' ?&gt;
&lt;!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"&gt;
&lt;ui:composition xmlns="http://www.w3.org/1999/xhtml"
                xmlns:ui="http://java.sun.com/jsf/facelets"
                template="./../modeloPrincipal.xhtml"
                xmlns:p="http://primefaces.prime.com.tr/ui"
                xmlns:f="http://java.sun.com/jsf/core"
                xmlns:h="http://java.sun.com/jsf/html"&gt;

    &lt;ui:define name="content"&gt;   
        &lt;p:growl id="growl" showDetail="true" life="3000" /&gt; 
        &lt;h:form id="cadastro"&gt;
            &lt;h:panelGrid columns="2" cellpadding="5"&gt;
                &lt;h:outputText value="Nome do Usuário:" /&gt;
                &lt;h:inputText id="name" title="Digite o nome de usuário a ser criado" value="#{usuarioBean.nome}"/&gt;

                &lt;h:outputText value="Senha do Usuário:" /&gt;
                &lt;h:inputText id="password" title="Digite senha do usuário" value="#{usuarioBean.senha}"/&gt;


                &lt;h:outputText value="Grupo do Usuário:" /&gt;
                &lt;h:selectOneMenu value="#{usuarioBean.groupid}"&gt;  
                    &lt;f:converter converterId="usuarioConverter" /&gt;
                    &lt;f:selectItem itemLabel="Selecione" itemValue="" /&gt;  
                    &lt;f:selectItems value="#{grupoBean.listar()}" var="grupo" itemLabel="#{grupo.nome}" itemValue="#{grupo.groupid}"/&gt;  
                &lt;/h:selectOneMenu&gt;

                &lt;h:commandButton action="#{usuarioBean.criarUsuario()}" value="Salvar"/&gt;
            &lt;/h:panelGrid&gt;
        &lt;/h:form&gt;
    &lt;/ui:define&gt;

&lt;/ui:composition&gt;
L

Em criarUsuario os seus println de usuario aparece algo ou null ?

Tem certeza que os dados estão chegando no bean ?

F

lele_vader:
Em criarUsuario os seus println de usuario aparece algo ou null ?

Tem certeza que os dados estão chegando no bean ?

Pois é, estão vindo nulos :frowning:

Informações: >>>>>>>>>>>>>Entrou aqui!!!!<<<<<< Informações: null Informações: null

Parece que não estão chegando no bean, mas eu não sei porque…

L

então já sabe porque está dando erro de fk.

Você está usando cdi não é ?

Você incluiu o arquivo beans.xml ?

Coloca no seu bean assim

@Named(“usuarioBean”)

@ManagedBean é que tem value eu acho.

R

em vez de @Named anota a classe com @ManagedBean pra ver o que acontece.

F

FUNCIONOU!!!

Era isso o que você disse raf4ever, tirei o @Named e coloquei o @ManagedBean

lele_vader tinha o arquivo beans.xml já…

Muito obrigado pessoal. Vocês são demais.

L

Testa como eu falei também.
Porque se vai ter o beans.xml é melhor usar @Named do que @ManagedBean

Tenta assim

@Named(“usuarioBean”)

F

lele_vader:
Testa como eu falei também.
Porque se vai ter o beans.xml é melhor usar @Named do que @ManagedBean

Tenta assim

@Named(“usuarioBean”)


Com o named, veio nulos os valores de novo…

O arquivo beans.xml está vazio:

<?xml version="1.0" encoding="UTF-8"?>


L

Onde você colocou o arquivo beans.xml e qual servidor está usando ?

F

Está dentro de Arquivos de Configuração do Netbeans.
Estou usando o glassfish 3.1.2

L

tenta colocar dentro da pasta web-inf do seu projeto.

F

lele_vader:
tenta colocar dentro da pasta web-inf do seu projeto.

Foi mal. Quando fui colocar em WEB-INF vi que já estava lá :slight_smile:

L

E ainda está dando erro ?
Estranho que essa versão do glassfish é java ee6, então ele suporta cdi.

F

Não está mais dando erro não.

Eu disse há uns 4 posts atrás.

Valeu pela ajuda!

L

Eu perguntei com o @Named.

Mas tudo bem.

vlw.

Criado 28 de maio de 2012
Ultima resposta 28 de mai. de 2012
Respostas 22
Participantes 5