[Resolvido]Mehod not found em JSF

3 respostas
EHS

Estou tendo esse erro ao salvar no banco com hibernate Method not found: [email removido]() e não acho a solução.

faces-config
<faces-config version="2.0"
    xmlns="http://java.sun.com/xml/ns/javaee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd">

    <managed-bean>
        <managed-bean-name>produtoController</managed-bean-name>
        <managed-bean-class>controller.ProdutoController</managed-bean-class>
        <managed-bean-scope>session</managed-bean-scope>
    </managed-bean>

</faces-config>
dao
public class ProdutoDAO {

    private static Session session = null;

    public void inserir(final Produto produto) throws Exception {
        session = hibernateUtil.getSessionFactory().openSession();
        session.beginTransaction();
        session.save(produto);
        session.flush();
        session.getTransaction().commit();
        session.close();
    }

}
controller
public class ProdutoController {

    private Produto produto;

    public Produto getProduto() {
        return produto;
    }

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

    public ProdutoController() {
        produto = new Produto();
    }

    public String salvar() throws Exception {
        ProdutoDAO produtoDAO = new ProdutoDAO();
        produtoDAO.inserir(produto);
        produto = new Produto();
        return "salvar";
    }
}
formulario cadastro
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:p="http://primefaces.prime.com.tr/ui">
    <h:head>
        
    </h:head>
    <ui:composition template="./template.xhtml">
        <ui:define name="principal">
            <p:messages/>
            <h:form>
                <h:panelGrid>
                    <h:outputLabel value="Nome"/>
                    <p:inputText value="#{produtoController.produto.nome}" id="nome" required="ture" requiredMessage="Campo [Nome] obrigatório"/>
                    <h:outputLabel value="Descrição"/>
                    <p:inputTextarea value="#{produtoController.produto.descricao}" id="descricao" required="true" requiredMessage="Campo [Descrição] obrigatório"
                                     autoResize="" effectDuration="" maxHeight=""/>
                    <h:commandButton value="Salvar" action="#{produtoController.Salvar}"/>
                </h:panelGrid>
            </h:form>
        </ui:define>
    </ui:composition>
</html>

3 Respostas

R

no managed bean tá ‘salvar’ e no form tá ‘Salvar’

EHS

Bá pura falta de atenção mesmo, era isso aí mesmo.

Quindin

EHS põe o topico como [RESOLVIDO] ^^ Ajuda a saber que a duvida ja foi tirada.

Abrass

Criado 13 de fevereiro de 2011
Ultima resposta 14 de fev. de 2011
Respostas 3
Participantes 3