'#{empresaBean.empresa.nome}' Error reading 'nome' on type persistencia.Empresa

3 respostas
T

Olá Srs.,
Como neófito em java web, estou tendo problemas na implementação de meu sistema e preciso da ajuda de vocês.
Estranho é que eu utilizo qualquer outro campo da minha entidade e a página renderiza sem problemas, porém sempre que tento utilizar o campo nome apresenta o erro acima.
Segue abaixo o log do Tomcat:

05/06/2010 18:07:47 org.ajax4jsf.webapp.BaseXMLFilter doXmlFilter

SEVERE: Exception in the filter chain

javax.servlet.ServletException: /empresa.jsp(16,4) #{empresaBean.empresa.nome}’ Error reading ‘nome’ on type persistencia.Empresa

at javax.faces.webapp.FacesServlet.service(FacesServlet.java:325)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:206)

at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)

at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:388)

at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:515)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at util.HibernateSessionFilter.doFilter(HibernateSessionFilter.java:18)

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.Http11Processor.process(Http11Processor.java:852)

at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)

at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)

at java.lang.Thread.run(Unknown Source)

Caused by: org.apache.jasper.el.JspELException: /empresa.jsp(16,4) #{empresaBean.empresa.nome}’ Error reading ‘nome’ on type persistencia.Empresa

at org.apache.jasper.el.JspValueExpression.getValue(JspValueExpression.java:107)

at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:190)

at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:178)

at javax.faces.component.UIOutput.getValue(UIOutput.java:168)

at com.sun.faces.renderkit.html_basic.HtmlBasicInputRenderer.getValue(HtmlBasicInputRenderer.java:205)

at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.getCurrentValue(HtmlBasicRenderer.java:338)

at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeEnd(HtmlBasicRenderer.java:164)

at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:878)

at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1620)

at javax.faces.render.Renderer.encodeChildren(Renderer.java:168)

at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:848)

at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1613)

at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1616)

at com.sun.faces.application.view.JspViewHandlingStrategy.doRenderView(JspViewHandlingStrategy.java:420)

at com.sun.faces.application.view.JspViewHandlingStrategy.renderView(JspViewHandlingStrategy.java:209)

at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:126)

at org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)

at org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)

at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:127)

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)

 21 more

Caused by: java.lang.NullPointerException

at persistencia.Empresa.getNome(Empresa.java:37)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at javax.el.BeanELResolver.getValue(BeanELResolver.java:62)

at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:54)

at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:72)

at org.apache.el.parser.AstValue.getValue(AstValue.java:118)

at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)

at org.apache.jasper.el.JspValueExpression.getValue(JspValueExpression.java:101)

 42 more

05/06/2010 18:07:47 org.apache.catalina.core.StandardWrapperValve invoke

SEVERE: Servlet.service() for servlet Faces Servlet threw exception

java.lang.NullPointerException

at persistencia.Empresa.getNome(Empresa.java:37)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

at java.lang.reflect.Method.invoke(Unknown Source)

at javax.el.BeanELResolver.getValue(BeanELResolver.java:62)

at javax.el.CompositeELResolver.getValue(CompositeELResolver.java:54)

at com.sun.faces.el.FacesCompositeELResolver.getValue(FacesCompositeELResolver.java:72)

at org.apache.el.parser.AstValue.getValue(AstValue.java:118)

at org.apache.el.ValueExpressionImpl.getValue(ValueExpressionImpl.java:186)

at org.apache.jasper.el.JspValueExpression.getValue(JspValueExpression.java:101)

at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:190)

at javax.faces.component.ComponentStateHelper.eval(ComponentStateHelper.java:178)

at javax.faces.component.UIOutput.getValue(UIOutput.java:168)

at com.sun.faces.renderkit.html_basic.HtmlBasicInputRenderer.getValue(HtmlBasicInputRenderer.java:205)

at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.getCurrentValue(HtmlBasicRenderer.java:338)

at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeEnd(HtmlBasicRenderer.java:164)

at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:878)

at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1620)

at javax.faces.render.Renderer.encodeChildren(Renderer.java:168)

at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:848)

at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1613)

at javax.faces.component.UIComponent.encodeAll(UIComponent.java:1616)

at com.sun.faces.application.view.JspViewHandlingStrategy.doRenderView(JspViewHandlingStrategy.java:420)

at com.sun.faces.application.view.JspViewHandlingStrategy.renderView(JspViewHandlingStrategy.java:209)

at com.sun.faces.application.view.MultiViewHandler.renderView(MultiViewHandler.java:126)

at org.ajax4jsf.application.ViewHandlerWrapper.renderView(ViewHandlerWrapper.java:100)

at org.ajax4jsf.application.AjaxViewHandler.renderView(AjaxViewHandler.java:176)

at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:127)

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:290)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:206)

at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)

at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:388)

at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:515)

at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)

at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

at util.HibernateSessionFilter.doFilter(HibernateSessionFilter.java:18)

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.Http11Processor.process(Http11Processor.java:852)

at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)

at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)

at java.lang.Thread.run(Unknown Source)

web.xml

<?xml version="1.0" encoding="UTF-8"?>


tigre

javax.faces.STATE_SAVING_METHOD
server


com.sun.faces.config.ConfigureListener


Faces Servlet
javax.faces.webapp.FacesServlet
1


Faces Servlet
.jsf


BASIC


HibernateSessionFilter
util.HibernateSessionFilter


HibernateSessionFilter
/

<context-param>
<param-name>org.richfaces.SKIN</param-name>
<param-value>blueSky</param-value>
org.richfaces.CONTROL_SKINNING enable RichFaces Filter richfaces org.ajax4jsf.Filter richfaces Faces Servlet REQUEST FORWARD INCLUDE

faces-config.xml

<?xml version="1.0" encoding="UTF-8"?>



empresaBean
logica.EmpresaBean
session

[
Desde já,

Muito obrigado

3 Respostas

A

O seu problema está no método getNome:

public String getNome() {
	return nome.toString();
}

Se a variável nome não estiver setada (ou seja, com valor NULL), então vai dar rolo se você tentar invocar o toString(). Você pode colocar condições para retornar NULL quando nome for NULL ou retornar diretamente o valor de nome.

V

Famoso NPE.

T

Obrigado Alexandre,

Ontem, logo depois de abrir o tópico eu fiz um teste atribuindo “” ao nome já que esse campo é not null na tabela e o crude funcionava com todos os outros campo da tabela.

private String nome = “”;

Funcionou, mas com certeza a sua solução foi melhor.

Muito obrigado Alexandre.

Criado 5 de junho de 2010
Ultima resposta 6 de jun. de 2010
Respostas 3
Participantes 3