Após clicar em executar no meu NETBEANS deverá aparecer um página HTML para entrada dos dados para comunicar com meu BEAN da minha aplicação, mas acontece que ao executar usando o NETBEANS da a seguinte mensagem “nullPointerException”,
realmente não entendi pois deveria apenas apresentar uma página para entrada de dados. Alguém pode me ajudar?
tem como você colar o stacktrace aí pra gente analisar o erro?
drsmachado
Qual o stackTrace?
Onde está o erro?
A
andredecotia
O construtor de agendaContatoBean está private?
Você criou o get e o set de contato em agendaContatoBean?
Pode postar o seu stack trace e Managed Bean?
W
Welder_Divino
STACK TRACE…
An Error Occurred:
java.lang.NullPointerException
Stack Trace
java.lang.NullPointerException
at java.util.concurrent.ConcurrentHashMap.get(ConcurrentHashMap.java:796)
at com.sun.faces.mgbean.BeanManager$ScopeManager.getScopeHandler(BeanManager.java:484)
at com.sun.faces.mgbean.BeanManager$ScopeManager.getFromScope(BeanManager.java:476)
at com.sun.faces.mgbean.BeanManager.getBeanFromScope(BeanManager.java:240)
at com.sun.faces.el.ManagedBeanELResolver.resolveBean(ManagedBeanELResolver.java:242)
at com.sun.faces.el.ManagedBeanELResolver.getValue(ManagedBeanELResolver.java:116)
at com.sun.faces.el.DemuxCompositeELResolver._getValue(DemuxCompositeELResolver.java:176)
at com.sun.faces.el.DemuxCompositeELResolver.getValue(DemuxCompositeELResolver.java:203)
at org.apache.el.parser.AstIdentifier.getValue(AstIdentifier.java:71)
at org.apache.el.parser.AstValue.getValue(AstValue.java:147)
at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:189)
at org.apache.jasper.el.JspValueExpression.getValue(JspValueExpression.java:106)
at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:193)
at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:181)
at javax.faces.component.UIOutput.getValue(UIOutput.java:169)
at com.sun.faces.renderkit.html_basic.HtmlBasicInputRenderer.getValue(HtmlBasicInputRenderer.java:205)
at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.getCurrentValue(HtmlBasicRenderer.java:355)
at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeEnd(HtmlBasicRenderer.java:164)
at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:883)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1659)
at javax.faces.render.Renderer.encodeChildren(Renderer.java:168)
at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:853)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1652)
at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1655)
at com.sun.faces.application.view.JspViewHandlingStrategy.doRenderView(JspViewHandlingStrategy.java:431)
at com.sun.faces.application.view.JspViewHandlingStrategy.renderView(JspViewHandlingStrategy.java:233)
at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:131)
at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:121)
at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:101)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:313)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:164)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:498)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:562)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:394)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:243)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:188)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:166)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:302)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at java.lang.Thread.run(Thread.java:636)
MichelSante
Posta o seu metodo agendaContatoBean.incluirContato
Rodrigo_Sasaki
poste o bean todo
W
Welder_Divino
Os GETTERS E SETTERS estão criados e o construtor é público.
Mas ao executar o AgendaContato.jsp deveria apenas exibir um pagina em HTML para entrada dos dados?
Mas ao executar o AgendaContato.jsp está dando o erro de nullPointerException…
A
andredecotia
Dá erro ao carregar? Ou dá erro quando clica em Incluir na tela?
W
Welder_Divino
Class Contato
packagedominio;/* * To change this template, choose Tools | Templates * and open the template in the editor. */importjavax.faces.bean.ManagedBean;importjavax.faces.bean.RequestScoped;/** * * @author welder */@ManagedBean@RequestScopedpublicclassContato{privateStringnome;privateStringendereco;privateStringsexo;/** Creates a new instance of Contato */publicContato(){}publicStringgetEndereco(){returnendereco;}publicvoidsetEndereco(Stringendereco){this.endereco=endereco;}publicStringgetNome(){returnnome;}publicvoidsetNome(Stringnome){this.nome=nome;}publicStringgetSexo(){returnsexo;}publicvoidsetSexo(Stringsexo){this.sexo=sexo;}}-----------------------------------------------------------------------------------------------------------ClassAgendaContatoBeanpackagevisao;importdominio.Contato;importjava.awt.event.ActionEvent;importjava.util.ArrayList;importjava.util.List;importjavax.faces.bean.ManagedBean;importjavax.faces.bean.SessionScoped;/** * * @author welder */@ManagedBean@SessionScopedpublicclassAgendaContatoBean{privateList<Contato>contatos;privateContatocontato;/** Creates a new instance of AgendaContatoBean */publicAgendaContatoBean(){this.setContatos(newArrayList<Contato>());this.setContato(newContato());}publicvoidincluirContato(ActionEventevent){this.getContatos().add(this.getContato());this.setContato(newContato());}publicList<Contato>getContatos(){returncontatos;}publicvoidsetContatos(List<Contato>contatos){this.contatos=contatos;}publicContatogetContato(){returncontato;}publicvoidsetContato(Contatocontato){this.contato=contato;}}
W
Welder_Divino
O ERRO acontece ao executar o projeto, ou seja ao executar o AgendaContato.jsp…
Realmente não sei o motivo do erro, alguém pode me ajudar?
1 - Ao submeter a página clicando no botão - <h:commandButton actionListener="#{agendaContatoBean.incluirContato}" value=“incluir” /> desse componente serei direcionado ao BEAN da minha aplicação mais especifico no construtor
2 - Dentro do construtor tenho dois métodos setters um que instancia um objeto ArrayList e contatos que é do tipo List faz referencia a esse objeto.
3 - Após criar uma COLLECTION o outro SETTER instancia um objeto do Contato já com os valores dos atributos e adiciono na lista.
4 - O meu problema é que não estou conseguindo executar a minha página HTML renderizada pelo Jsf.
W
Welder_Divino
Olá André, na verdade não vi nenhum solução apresentada em código especifico.
Acho que meu problema está relaconado com xml ou faces-confing, não tenho certeza?
A
andredecotia
Por que você acha que possa ser algo de xml?
W
Welder_Divino
Realmente não sei o que está acontecendo, alguém pode me ajudar?