-
Type:
Bug
-
Resolution: Unresolved
-
Priority:
Low
-
None
-
Affects Version/s: 8.5.0, 8.3.2, 8.4.2, 7.19.14
-
Component/s: Macros - Other Macros
-
None
-
2
-
Severity 3 - Minor
Problem
View PDF Macro does not render some PDF files.
This could be replicated using some exported PDFs from Google Chrome, like from atlassian.com
This could affect other PDFs too.
Environment
Tested this on Confluence DC 7.19.14 , 8.3.2, 8.4.2 and 8.5
Steps to Reproduce
- Access a web page using Google Chrome.
- Select File > Print > Save the page as PDF.
- Add this PDF as an attachment to a page.
- Use the PDF view macro and select the PDF you attached.
- Publish the page.
No exception is seen on logs by default, but if sandbox debug is enabled we can see the below java.lang.NullPointerException:
2023-09-19 17:17:10,653 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: Doing thumbnail generation for: /var/atlassian/application-data/confluence/temp/840624859825133428.tmp with page 0 2023-09-19 17:17:10,654 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: With input params. Page Number = 0, ,maxWidth = 2147483647, maxHeight = 2147483647 2023-09-19 17:17:10,704 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: java.lang.NullPointerException 2023-09-19 17:17:10,705 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.sun.pdfview.font.PDFFontDescriptor.<init>(PDFFontDescriptor.java:106) 2023-09-19 17:17:10,705 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.sun.pdfview.font.PDFFont.getFont(PDFFont.java:137) 2023-09-19 17:17:10,705 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.sun.pdfview.PDFParser.getFontFrom(PDFParser.java:1170) 2023-09-19 17:17:10,706 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.sun.pdfview.PDFParser.iterate(PDFParser.java:719) 2023-09-19 17:17:10,706 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.sun.pdfview.BaseWatchable.run(BaseWatchable.java:101) 2023-09-19 17:17:10,706 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.sun.pdfview.BaseWatchable.execute(BaseWatchable.java:263) 2023-09-19 17:17:10,706 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.sun.pdfview.BaseWatchable.go(BaseWatchable.java:197) 2023-09-19 17:17:10,706 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.sun.pdfview.PDFFile.getPage(PDFFile.java:1566) 2023-09-19 17:17:10,707 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.atlassian.confluence.plugins.conversion.convert.image.PdfConversionSupport.generateThumbnailDirect(PdfConversionSupport.java:152) 2023-09-19 17:17:10,707 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.atlassian.confluence.plugins.conversion.convert.image.SandboxPdfThumbnailTask.apply(SandboxPdfThumbnailTask.java:69) 2023-09-19 17:17:10,707 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.atlassian.confluence.plugins.conversion.convert.image.SandboxPdfThumbnailTask.apply(SandboxPdfThumbnailTask.java:29) 2023-09-19 17:17:10,707 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.atlassian.confluence.impl.util.sandbox.SandboxServerWorker.processNextMessage(SandboxServerWorker.java:53) 2023-09-19 17:17:10,708 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.atlassian.confluence.impl.util.sandbox.SandboxServer.run(SandboxServer.java:36) 2023-09-19 17:17:10,708 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.atlassian.confluence.impl.util.sandbox.SandboxServer.main(SandboxServer.java:56) 2023-09-19 17:17:10,708 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: java.lang.NullPointerException 2023-09-19 17:17:10,708 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.sun.pdfview.font.PDFFontDescriptor.<init>(PDFFontDescriptor.java:106) 2023-09-19 17:17:10,708 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.sun.pdfview.font.PDFFont.getFont(PDFFont.java:137) 2023-09-19 17:17:10,709 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.sun.pdfview.PDFParser.getFontFrom(PDFParser.java:1170) 2023-09-19 17:17:10,710 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.sun.pdfview.PDFParser.iterate(PDFParser.java:719) 2023-09-19 17:17:10,711 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.sun.pdfview.BaseWatchable.run(BaseWatchable.java:101) 2023-09-19 17:17:10,711 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.sun.pdfview.BaseWatchable.execute(BaseWatchable.java:263) 2023-09-19 17:17:10,711 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.sun.pdfview.BaseWatchable.go(BaseWatchable.java:197) 2023-09-19 17:17:10,712 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.sun.pdfview.PDFFile.getPage(PDFFile.java:1566) 2023-09-19 17:17:10,712 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.atlassian.confluence.plugins.conversion.convert.image.PdfConversionSupport.renderPage(PdfConversionSupport.java:213) 2023-09-19 17:17:10,713 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.atlassian.confluence.plugins.conversion.convert.image.PdfConversionSupport.generateThumbnailDirect(PdfConversionSupport.java:154) 2023-09-19 17:17:10,713 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.atlassian.confluence.plugins.conversion.convert.image.SandboxPdfThumbnailTask.apply(SandboxPdfThumbnailTask.java:69) 2023-09-19 17:17:10,713 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.atlassian.confluence.plugins.conversion.convert.image.SandboxPdfThumbnailTask.apply(SandboxPdfThumbnailTask.java:29) 2023-09-19 17:17:10,714 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.atlassian.confluence.impl.util.sandbox.SandboxServerWorker.processNextMessage(SandboxServerWorker.java:53) 2023-09-19 17:17:10,714 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.atlassian.confluence.impl.util.sandbox.SandboxServer.run(SandboxServer.java:36) 2023-09-19 17:17:10,714 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: \tat com.atlassian.confluence.impl.util.sandbox.SandboxServer.main(SandboxServer.java:56) 2023-09-19 17:17:10,765 INFO [sandbox-logger] [impl.util.sandbox.ConversionSandbox] lambda$buildConfig$0 worker1: Done thumbnail generation for: 840624859825133428.tmp with page 0
Expected Results
The PDF renders fine.

Actual Results
PDF preview is garbled and unreadable.

Workaround
Solution 1:
- Export the PDF again using another application
Solution 2:
- Open the PDF in another software like Adobe Reader or Safari.
- Print the file as a PDF again.
Using "Save as" will not fix the PDF.
Solution 3:
- Although it has fewer features it is possible to preview the PDF using the View File macro.
- is related to
-
CONFSERVER-59436 PDF view macro not rendering pdf files as expected.
-
- Gathering Impact
-