原创

使用 itext pdf 生成 pdf 时遇到问题

温馨提示:
本文最后更新于 2024年04月12日,已超过 48 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我

We have a Java spring project and we are writing pdf from that on a call from python so on hitting it we generate 2 different pdf's and one pdf is generating fine and one pdf is not generating. We are getting the below error.

[ServletContext@1062741843[app:enrolment module:app path:null spec-version:4.0], request:
weblogic.servlet.internal.ServletRequestImpl@4115a7bb[ POST /enrolment/sendfullreport.html HTTP/1.1 X-Forwarded-Proto: 
https X-Forwarded-Port: 443 X-Amzn-Trace-Id: Root=1-6615228a-09e13af72492875629c0dac8 Content-Length: 7 
User-Agent: python-requests/2.31.0 Accept-Encoding: gzip, deflate Accept: */* Accept-Charset: utf-8 Content-Type: text/xml Connection: Keep-Alive X-Forwarded-For: 65.0.217.63 X-WebLogic-KeepAliveSecs: 30 X-WebLogic-Force-JVMID: -1946388830 X-WebLogic-Request-ClusterInfo: true ]] 
Root cause of ServletException. java.lang.InternalError: java.lang.reflect.InvocationTargetException at 
java.desktop/sun.font.FontManagerFactory$1.run(FontManagerFactory.java:86) at java.base/java.security.AccessController.doPrivileged(Native Method) at java.desktop/sun.font.FontManagerFactory.getInstance(FontManagerFactory.java:74) at 
java.desktop/java.awt.Font.getFont2D(Font.java:497) at java.desktop/java.awt.Font.getFontName(Font.java:1469) at 
java.desktop/java.awt.Font.getFontName(Font.java:1451) at com.itextpdf.awt.PdfGraphics2D.getCachedBaseFont(PdfGraphics2D.java:1099) at 
com.itextpdf.awt.PdfGraphics2D.setFont(PdfGraphics2D.java:1094) at com.itextpdf.awt.PdfGraphics2D.<init>(PdfGraphics2D.java:244) at 
com.itextpdf.awt.PdfGraphics2D.<init>(PdfGraphics2D.java:214) at enrolment.util.PDFUtil.drawAreaChart(PDFUtil.java:820) at 
enrolment.util.DrwnInPdf.createPdf(DrwnInPdf.java:1371) at 
enrolment.controller.SendFullReportController.generatePdfReport(SendFullReportController.java:136) at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at 
java.base/java.lang.reflect.Method.invoke(Method.java:566) at 
org.springframework.web.bind.annotation.support.HandlerMethodInvoker.invokeHandlerMethod(HandlerMethodInvoker.java:178) at 
org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:442) 
at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(AnnotationMethodHandlerAdapter.java:430) at 
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:959) at 
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893) at 
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970) at 
org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:872) at 
javax.servlet.http.HttpServlet.service(HttpServlet.java:665) at 
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846) at 
javax.servlet.http.HttpServlet.service(HttpServlet.java:750) at 
weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:295) at 
weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:260) at 
weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:137) at 
weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:353) at 
weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:250) at 
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3865) at 
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3832) at 
weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:344) at 
weblogic.security.service.SecurityManager.runAsForUserCode(SecurityManager.java:197) at 
weblogic.servlet.provider.WlsSecurityProvider.runAsForUserCode(WlsSecurityProvider.java:203) at 
weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:71) at 
weblogic.servlet.internal.WebAppServletContext.processSecuredExecute(WebAppServletContext.java:2505) at 
weblogic.servlet.internal.WebAppServletContext.doSecuredExecute(WebAppServletContext.java:2354) at 
weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2329) at 
weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2307) at 
weblogic.servlet.internal.ServletRequestImpl.runInternal(ServletRequestImpl.java:1798) at 
weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1752) at 
weblogic.servlet.provider.ContainerSupportProviderImpl$WlsRequestExecutor.run(ContainerSupportProviderImpl.java:272) at 
weblogic.invocation.ComponentInvocationContextManager._runAs(ComponentInvocationContextManager.java:352) at 
weblogic.invocation.ComponentInvocationContextManager.runAs(ComponentInvocationContextManager.java:337) at 
weblogic.work.LivePartitionUtility.doRunWorkUnderContext(LivePartitionUtility.java:57) at 
weblogic.work.PartitionUtility.runWorkUnderContext(PartitionUtility.java:41) at 
weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext(SelfTuningWorkManagerImpl.java:651) at 

How can i solve it?

正文到此结束
热门推荐
本文目录