sexta-feira, 16 de março de 2012

jfreechart - java.lang.NullPointerException

java.lang.NullPointerException é exibido ao tentar utilizar o bean do jfreechart em escopo view.

Para resolver o problema mude o escopo para request ou session.

Testado nas versões: jfreechart-1.0.14 jfreechart-1.0.13



  1. java.lang.NullPointerException  
  2.     at com.sun.faces.lifecycle.RestoreViewPhase.notifyAfter(RestoreViewPhase.java:288)  
  3.     at com.sun.faces.lifecycle.RestoreViewPhase.doPhase(RestoreViewPhase.java:110)  
  4.     at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:114)  
  5.     at javax.faces.webapp.FacesServlet.service(FacesServlet.java:308)  
  6.     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:304)  
  7.     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)  
  8.     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:240)  
  9.     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:203)  
  10.     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:164)  
  11.     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:108)  
  12.     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)  
  13.     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:379)  
  14.     at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:242)  
  15.     at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:259)  
  16.     at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:281)  
  17.     at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)  
  18.     at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)  
  19.     at java.lang.Thread.run(Unknown Source) 

quinta-feira, 1 de março de 2012

reRender ao abrir rich:tab

O rpnCobrancas e seu conteúdo não serão renderizados até que o usuário clique na tab rtbCobranca.


<rich:tab label="Cobrança" id="rtbCobranca">

     <a4j:support reRender="rpnCobrancas" event="onlabelclick">
          <f:setPropertyActionListener value="true" target="#{bean.renderCobrancas}"/>
     </a4j:support>
    
     <rich:panel id="rpnCobrancas" rendered="#{bean.renderCobrancas}">
     <rich:panel>

</rich:tab>