dentro de p:commandLink coloca a propriedade
ajax=“false”
[code]
<p:commandLink ajax=“false” value=“Novo Cliente” actionListener="#{clienteController.prepararAdicionarCliente}"/>[/code]
dentro de p:commandLink coloca a propriedade
ajax=“false”
[code]
<p:commandLink ajax=“false” value=“Novo Cliente” actionListener="#{clienteController.prepararAdicionarCliente}"/>[/code]
[quote=thales_biolck]dentro de p:commandLink coloca a propriedade
ajax=“false”
[code]
<p:commandLink ajax=“false” value=“Novo Cliente” actionListener="#{clienteController.prepararAdicionarCliente}"/>[/code][/quote]
agora ele vai como se fosse pra carregar algo mais volta pra mesma pagina, deve ser pelo ajax=“false”
[quote=thales_biolck]dentro de p:commandLink coloca a propriedade
ajax=“false”
[code]
<p:commandLink ajax=“false” value=“Novo Cliente” actionListener="#{clienteController.prepararAdicionarCliente}"/>[/code][/quote]
quanto ao metodo é este mesmo ne?
public String prepararAdicionarCliente(){
cliente = new Cliente();
return"cadCliente";
}
sim
agora nao entendi pq nao esta chamando!
Affff
estranho,
ao inves de:
actionListener="#{clienteController.prepararAdicionarCliente}"
coloca:
action="#{clienteController.prepararAdicionarCliente}"
e se nao der certo, coloca um:
return"cadCliente.jsf"
e se ainda sim nao der certo, tira esse return e coloca:
FacesContext.getCurrentInstance().getExternalContext().redirect("/cadCliente.jsf");
mas acho q so tirando o actionListener ja vai da certo
usei este ultimo ai e o erro agora é este
GRAVE: 'java.lang.ExceptionInInitializerError' recebido ao invocar escuta de ação '#{clienteController.adicionarCliente}' para o componente 'j_idt9'
09/01/2012 23:16:43 javax.faces.event.MethodExpressionActionListener processAction
GRAVE: java.lang.ExceptionInInitializerError
at Utils.HibernateUtil.getSessionFactory(HibernateUtil.java:48)
at Dao.ClienteDaoImpl.save(ClienteDaoImpl.java:21)
at controller.ClienteController.adicionarCliente(ClienteController.java:71)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.el.parser.AstValue.invoke(AstValue.java:191)
at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
at javax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:153)
at javax.faces.event.ActionEvent.processListener(ActionEvent.java:88)
at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:772)
at javax.faces.component.UICommand.broadcast(UICommand.java:300)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:775)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1267)
at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:82)
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:312)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:859)
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1555)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.hibernate.event.EventListeners
at org.hibernate.cfg.Configuration.reset(Configuration.java:170)
at org.hibernate.cfg.AnnotationConfiguration.reset(AnnotationConfiguration.java:228)
at org.hibernate.cfg.Configuration.<init>(Configuration.java:187)
at org.hibernate.cfg.Configuration.<init>(Configuration.java:191)
at org.hibernate.cfg.AnnotationConfiguration.<init>(AnnotationConfiguration.java:103)
at Utils.HibernateUtil.getSessionFactory(HibernateUtil.java:34)
... 33 more
09/01/2012 23:16:43 com.sun.faces.context.AjaxExceptionHandlerImpl log
GRAVE: JSF1073: javax.faces.event.AbortProcessingException obtido durante o processamento de INVOKE_APPLICATION 5: UIComponent-ClientId=j_idt7:j_idt9, Message=java.lang.ExceptionInInitializerError
09/01/2012 23:16:43 com.sun.faces.context.AjaxExceptionHandlerImpl log
GRAVE: java.lang.ExceptionInInitializerError
javax.faces.event.AbortProcessingException: java.lang.ExceptionInInitializerError
at javax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:182)
at javax.faces.event.ActionEvent.processListener(ActionEvent.java:88)
at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:772)
at javax.faces.component.UICommand.broadcast(UICommand.java:300)
at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:775)
at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:1267)
at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:82)
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:312)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:859)
at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579)
at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1555)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.ExceptionInInitializerError
at Utils.HibernateUtil.getSessionFactory(HibernateUtil.java:48)
at Dao.ClienteDaoImpl.save(ClienteDaoImpl.java:21)
at controller.ClienteController.adicionarCliente(ClienteController.java:71)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.el.parser.AstValue.invoke(AstValue.java:191)
at org.apache.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:276)
at javax.faces.event.MethodExpressionActionListener.processAction(MethodExpressionActionListener.java:153)
... 24 more
Caused by: java.lang.NoClassDefFoundError: Could not initialize class org.hibernate.event.EventListeners
at org.hibernate.cfg.Configuration.reset(Configuration.java:170)
at org.hibernate.cfg.AnnotationConfiguration.reset(AnnotationConfiguration.java:228)
at org.hibernate.cfg.Configuration.<init>(Configuration.java:187)
at org.hibernate.cfg.Configuration.<init>(Configuration.java:191)
at org.hibernate.cfg.AnnotationConfiguration.<init>(AnnotationConfiguration.java:103)
at Utils.HibernateUtil.getSessionFactory(HibernateUtil.java:34)
... 33 more
mas vc chegou a trocar o actionListener="…"
pra action="…" antes de tirar o return “cadCliente” ??
coloca assim q acho q vai:
<p:commandLink ajax="false" value="Novo Cliente" action="#{clienteController.prepararAdicionarCliente}"/>
[quote=thales_biolck]mas vc chegou a trocar o actionListener="…"
pra action="…" antes de tirar o return “cadCliente” ??[/quote]
sim e deu erro perai que vou por o erro
Deu certo meu metodo tava errada eu tava carregando o objeto novamente.
ai deixei ele assim e funcionou:
Mas ficou com ActionListener
public void adicionarCliente(){
ClienteDao dao = new ClienteDaoImpl();
dao.save(cliente);
Obrigado Cara
Pelo que observei no seu mapeamento da classe cliente, faltam várias coisas a serem feitas, como por exemplo informar as colunas correspondentes a tabela cliente.
[quote=fred_cbranco][quote=thales_biolck]antes de abrir a pagina de cadastro, tenta fazer o seguinte… dpois de cliente = new Cliente()
coloca um
return "cadastroCliente" //nome da sua pagina de cadastro, nao precisa da extensao nao
e alem de exibir a pagina direto, chama esse metodo de preparaCadastro. esse metodo vai te redirecionar pra sua pagina de cadastro automaticamente
[/quote]
eu nao to usando o metodo prepararAdicionar
alterei o AdicionarCliente
fiz assim:
public void adicionarCliente(){
cliente = new Cliente();
ClienteDao dao = new ClienteDaoImpl();
dao.save(cliente);
}
Agora ele grava no banco so que traz o nome como NULL
so grava o id[/quote]
No código acima ele sim irá salvar o nome como NULL, onde que você definiu o valor dele?
antes do dao.save faz aí cliente.setNome(“Adamastor”);.
Realmente precisa da classe DAO?
Pelo que eu sei ela só é aconselhada é sistemas bastante robustos… Logo vc pode fazer a persistência direto no Bean…