Not registered with Banco Javaweb Primefaces

Asked

Viewed 31 times

0

Productive:

 public class ProdutoDao implements IDao<Produto> {

     @Override
    public List<Produto> listar() {
        Session session = null;
        try {
            session = HibernateUtil.getSessionFactory().openSession();
            Query query = session.createQuery("from Produto pro");
            List<Produto> produtos = query.list();
            if (produtos.isEmpty() || produtos == null) {
                return null;
            } else {
                return produtos;
            }
        } catch (Exception e) {
            e.printStackTrace();
            return new ArrayList<Produto>();
        } finally {
            session.close();
        }
    }

    @Override
    public void inserir(Produto t) {
        Session session = null;
        Transaction transaction = null;
        try {
            session = HibernateUtil.getSessionFactory().openSession();
            transaction = session.beginTransaction();
            session.save(t);
            transaction.commit();
        } catch (Exception e) {
            e.printStackTrace();
        }finally{ session.close(); }
    }

    @Override
    public void alterar(Produto t) {
        Session session = null;
        try {
            session = HibernateUtil.getSessionFactory().openSession();
            session.saveOrUpdate(t);
            session.flush();
        } catch (Exception e) {
            e.printStackTrace();
        }finally{ session.close(); }
    }

    @Override
    public void deletar(Produto t) {
       Session session = null;
        try {
            session = HibernateUtil.getSessionFactory().openSession();
            Transaction beginTransaction = session.beginTransaction();
            Query query = session.createQuery("delete from produto p where p.id = :id");
            query.setParameter("id", t.getId());
            query.executeUpdate();
            beginTransaction.commit();
        } catch (Exception e) {
        } finally {

            session.close();
        }    
    }

}

Idao:

public interface IDao<T> {
    public List<T> listar();
    public void inserir(T t);
    public void alterar(T t);
    public void deletar(T t);
}

Produtobean:

public class ProdutoBean {
    private Produto produto;
    private List<Produto> produtos;

    public ProdutoBean() {
        produto = new Produto();
        produtos = new ProdutoDao().listar();
    }

    public void inserir() {
        ProdutoDao produtoDao = new ProdutoDao();
        if (produto.getId() != null && produto.getId() > 0) {
            produtoDao.alterar(produto);
        } else {
            produtoDao.inserir(produto);
        }
        produto = new Produto();
        produtos = produtoDao.listar();
    }

    public void editar(Produto pro) {
        this.produto = pro;
    }
    public void deletar(Produto pro) {
        ProdutoDao produtoDao = new ProdutoDao();
        produtoDao.deletar(pro);
        produto = new Produto();
    }

    public Produto getProduto() {
        return produto;
    }

    public void setProduto(Produto produto) {
        this.produto = produto;
    }

    public List<Produto> getProdutos() {
        return produtos;
    }

    public void setProdutos(List<Produto> produtos) {
        this.produtos = produtos;
    }



}

Registration Screen:

<f:view contentType="text/html">
    <h:head>
        <f:facet name="first">
            <meta content='text/html; charset=UTF-8' http-equiv="Content-Type"/>
            <title>PrimeFaces</title>
        </f:facet>
    </h:head>
    <h:body>
        <p:layout fullPage="true">
            <p:layoutUnit position="center">
                <h:form id="frmCadastro">
                    <h:panelGrid id="grid" columns="3" cellpadding="5">

                        <p:outputLabel for="nome"  value="Nome: "></p:outputLabel>
                        <p:inputText id="nome" value="#{produtoBean.produto.nome}" />
                        <p:message for="nome"/>

                        <p:outputLabel for="quantidade"  value="Quantidade de Produto: "></p:outputLabel>
                        <p:spinner id="quantidade" min="10" max="20"
                                   value="#{produtoBean.produto.qtd}" />
                        <p:message for="quantidade"/>

                         <p:outputLabel for="data_cad"  value="Data de Cadastro: "></p:outputLabel>
                        <p:calendar id="data_cad" pattern="dd/MM/yyyy" mask="true"
                                    pages="2" value="#{usuarioBean.usuario.dataCad}" />
                        <p:message for="data_cad"/>

                    </h:panelGrid>

                    <p:commandButton id="submitForm" value="Salvar" update="grid" 
                                     action="#{produtoBean.salvar()}"/>


                    <p:separator ></p:separator>
                    <p:dataTable var="p" value="#{produtoBean.produtos}" rows="3"
                                 paginator="true">
                        <p:column headerText="Nome">
                            <h:outputText value="#{p.nome}"/>
                        </p:column>

                        <p:column headerText="Data de Cadastro">
                            <h:outputText value="#{p.dataCad}" />
                        </p:column>
                        <p:column headerText="Operações">
                            <p:commandButton value="Editar" action="#{produtoBean.alterar(p)}" update="@form"></p:commandButton>
                            <p:commandButton value="Deletar" 
                                             action="#{produtoBean.deletar(p)}" update="@form"></p:commandButton>
                        </p:column>
                    </p:dataTable>
                </h:form>
            </p:layoutUnit>
        </p:layout>
    </h:body>
</f:view>

1 answer

0

Did you run the project in debug mode? If yes, is the insert method of Product invoked? It runs all Try without any error?

If you have not yet run the debug project, run it and let us know if there are any errors in the console.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.