bom dia a todos…
to em uma aplicação onde estou usando netbeans com o visual web + hibernate + jsf…gostaria de saber se preciso declarar no jsf que estou usando hibernate…pq na action do meu formulario gera erro que nao consegue encontrar ou instanciar o meu metodo que efetuaLogin()…
- tenho a classe Dao onde se encontra todas os metodos de atualizar, remover…etc…DaoFactory onde se encontra rollback, commit…UsuarioDao onde se encontra o metodo existeUnico() que faz a busca no banco pra achar possivel usuario usando HQL…e meu UsuarioDaoBean onde faz o efetuaLogin() devolvendo uma String de sucesso ou nao…
- UsuarioDaoBean
/*
* UsuarioDaoBean.java
*
* Created on 5 de Julho de 2007, 10:13
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/
package br.com.ipt.dao;
import br.com.ipt.modelo.Usuario;
/**
*
* @author Administrador
*/
public class UsuarioDaoBean{
private final DaoFactory daoFactory = null;
private Usuario usuario;
public String efetuaLogin(Usuario usuario) {
UsuarioDao dao = this.daoFactory.getUsuarioDao();
this.usuario = dao.existeUnico(usuario);
if (this.usuario != null) {
return "sucesso";
} else {
return "falha";
}
}
public void logout() {
this.usuario = null;
}
public Usuario getUsuario() {
return usuario;
}
}
minha pagina de Login
<?xml version="1.0" encoding="UTF-8"?>
<jsp:root version="1.2" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:jsp="http://java.sun.com/JSP/Page" xmlns:ui="http://www.sun.com/web/ui">
<jsp:directive.page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"/>
<f:view>
<ui:page binding="#{Login.page1}" id="page1">
<ui:html binding="#{Login.html1}" id="html1">
<ui:head binding="#{Login.head1}" id="head1">
<ui:link binding="#{Login.link1}" id="link1" url="/resources/stylesheet.css"/>
</ui:head>
<ui:body binding="#{Login.body1}" id="body1" style="-rave-layout: grid">
<ui:form binding="#{Login.form1}" id="form1">
<h:inputText value="#{usuario.login}" binding="#{Login.login}" id="login" style="left: 120px; top: 24px; position: absolute"/>
<h:commandButton action="#{usuarioDaoBean.efetuaLogin}" binding="#{Login.button1}" id="button1" style="left: 144px; top: 144px; position: absolute" value="Enviar"/>
<h:inputSecret value="#{usuario.senha}" binding="#{Login.senha}" id="senha" style="left: 120px; top: 72px; position: absolute"/>
</ui:form>
</ui:body>
</ui:html>
</ui:page>
</f:view>
</jsp:root>
meu faces-config
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE faces-config PUBLIC
"-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
"http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
<faces-config>
<!-- Set default locale and add supported locales here...
<application>
<locale-config>
<default-locale>en</default-locale>
<supported-locale>de</supported-locale>
<supported-locale>fr</supported-locale>
<supported-locale>es</supported-locale>
</locale-config>
</application>
-->
<navigation-rule>
<from-view-id>/Login.jsp</from-view-id>
<navigation-case>
<from-outcome>sucesso</from-outcome>
<to-view-id>/Menu.jsp</to-view-id>
</navigation-case>
<navigation-case>
<from-outcome>falha</from-outcome>
<to-view-id>/Login.jsp</to-view-id>
</navigation-case>
</navigation-rule>
<managed-bean>
<managed-bean-name>usuario</managed-bean-name>
<managed-bean-class>br.com.ipt.modelo.Usuario</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
<managed-bean>
<managed-bean-name>usuarioDaoBean</managed-bean-name>
<managed-bean-class>br.com.ipt.dao.UsuarioDaoBean</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
</faces-config>
erro geradoooo…
06/07/2007 08:38:20 org.apache.catalina.core.ApplicationContext log
SEVERE: #{usuarioDaoBean.efetuaLogin}: javax.faces.el.MethodNotFoundException: efetuaLogin: br.com.ipt.dao.UsuarioDaoBean.efetuaLogin()
javax.faces.FacesException: #{usuarioDaoBean.efetuaLogin}: javax.faces.el.MethodNotFoundException: efetuaLogin: br.com.ipt.dao.UsuarioDaoBean.efetuaLogin()
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:94)
at com.sun.rave.web.ui.appbase.faces.ActionListenerImpl.processAction(ActionListenerImpl.java:57)
at javax.faces.component.UICommand.broadcast(UICommand.java:332)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:287)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:401)
at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:95)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:110)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:213)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.sun.rave.web.ui.util.UploadFilter.doFilter(UploadFilter.java:198)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:619)
Caused by: javax.faces.el.MethodNotFoundException: efetuaLogin: br.com.ipt.dao.UsuarioDaoBean.efetuaLogin()
at com.sun.faces.el.MethodBindingImpl.method(MethodBindingImpl.java:226)
at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:144)
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:92)
... 28 more
06/07/2007 08:38:20 org.apache.catalina.core.StandardWrapperValve invoke
SEVERE: Servlet.service() for servlet Faces Servlet threw exception
com.sun.rave.web.ui.appbase.ApplicationException: #{usuarioDaoBean.efetuaLogin}: javax.faces.el.MethodNotFoundException: efetuaLogin: br.com.ipt.dao.UsuarioDaoBean.efetuaLogin()
at com.sun.rave.web.ui.appbase.faces.ViewHandlerImpl.cleanup(ViewHandlerImpl.java:559)
at com.sun.rave.web.ui.appbase.faces.ViewHandlerImpl.renderView(ViewHandlerImpl.java:276)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:107)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:137)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:214)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at com.sun.rave.web.ui.util.UploadFilter.doFilter(UploadFilter.java:198)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:368)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:619)
Caused by: javax.faces.FacesException: #{usuarioDaoBean.efetuaLogin}: javax.faces.el.MethodNotFoundException: efetuaLogin: br.com.ipt.dao.UsuarioDaoBean.efetuaLogin()
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:94)
at com.sun.rave.web.ui.appbase.faces.ActionListenerImpl.processAction(ActionListenerImpl.java:57)
at javax.faces.component.UICommand.broadcast(UICommand.java:332)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:287)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:401)
at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:95)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:245)
at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:110)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:213)
... 20 more
Caused by: javax.faces.el.MethodNotFoundException: efetuaLogin: br.com.ipt.dao.UsuarioDaoBean.efetuaLogin()
at com.sun.faces.el.MethodBindingImpl.method(MethodBindingImpl.java:226)
at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:144)
at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:92)
... 28 more
como se percebe nao consegue encontrar o meu metodo efetuaLogin()…pq??
valeuu…