viernes, 6 de marzo de 2015

Error al generar pdf

Error:

HTTP Status 500 -


type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: java.lang.NullPointerException
 at com.genexus.reports.PDFReportItext.GxDrawText(Unknown Source)
 at arptcertificadoingret_impl.privateExecute(arptcertificadoingret_impl.java:243)
 at arptcertificadoingret_impl.webExecute(arptcertificadoingret_impl.java:58)
 at com.genexus.webpanels.GXWebObjectBase.doExecute(Unknown Source)
 at arptcertificadoingret.doExecute(arptcertificadoingret.java:21)
 at com.genexus.webpanels.GXWebObjectStub.callExecute(Unknown Source)
 at com.genexus.webpanels.GXWebObjectStub.doGet(Unknown Source)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
 at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)

 at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
 at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
 at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225)
 at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
 at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
 at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
 at com.googlecode.psiprobe.Tomcat70AgentValve.invoke(Tomcat70AgentValve.java:38)
 at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
 at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)
 at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
 at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
 at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:999)
 at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:565)
 at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:309)
 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:722)

 com.genexus.webpanels.GXWebObjectStub.callExecute(Unknown Source)
 com.genexus.webpanels.GXWebObjectStub.doGet(Unknown Source)
 javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
 javax.servlet.http.HttpServlet.service(HttpServlet.java:722)



Solución:




Esto se puede estar dando por falta de la librería poi.jar en la carptea lib del web-inf  o  como en mi caso se dio porque reemplace el archivo PDFReport.ini de windows a un linux.

En el archivo que esta en el SO windows contiene una linea para la fuente predeterminada:

Microsoft Sans Serif= c:\windows\fonts\micross.ttf

Ejemplo en linux la crea asi:

Microsoft Sans Serif= /usr/java/jdk1.6.0_21/jre/lib/fonts/LucidaSansRegular.ttf

O simplemente borra ese archivo (PDFReport.ini)

4 comentarios:

  1. Muchas gracias, en mi caso tenía todas las librerías, pero estaba apuntando a una fuente de windows. Al pasar del servidor de desarrollo (windows) a testing (linux) se producía el error

    ResponderEliminar
  2. En mi caso Elimine el PDFReport.Ini y solucione el Problema

    ResponderEliminar
  3. Fantástico, opte por renombrar el archivo PDFReport para resolver el problema.

    ResponderEliminar