[ https://issues.apache.org/jira/browse/PDFBOX-1125?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13141142#comment-13141142 ]
Per Abich commented on PDFBOX-1125: ----------------------------------- I hope this fix will make it into the next release - whenever that is. > NullPointerException when saving Document > ----------------------------------------- > > Key: PDFBOX-1125 > URL: https://issues.apache.org/jira/browse/PDFBOX-1125 > Project: PDFBox > Issue Type: Bug > Components: Writing > Affects Versions: 1.6.0 > Reporter: Per Abich > > I am trying to fill out this form(official Norwegian Government form): > http://www.nav.no/Om+NAV/Skjemaer/Arbeidsgiverskjemaer/L%C3%B8nn+og+personalskjemaer+for+din+bedrift+%28HR%29/Yrkesskade/_attachment/1073746888?_ts=1271f676c80 > > My code looks as follows: > public void setKode(InputStream inputStream, String value, OutputStream > output) throws IOException, COSVisitorException > { > PDDocument pdfDocument = PDDocument.load(inputStream); > if (LOGGER.isInfoEnabled()) > { > LOGGER.info(pdfDocument.getCurrentAccessPermission().toString()); > } > PDDocumentCatalog docCatalog = pdfDocument.getDocumentCatalog(); > PDAcroForm acroForm = docCatalog.getAcroForm(); > PDField field = acroForm.getField("beskrivelse"); > if (field != null) > { > field.setValue(value); > } else > { > System.err.println("No field found with name:" + "beskrivelse"); > } > pdfDocument.save(output); > } > While trying to fill in the field "beskrivelse" (or any other field in this > form) I get the following stacktrace: > java.lang.NullPointerException > at java.io.FilterInputStream.close(FilterInputStream.java:155) > at > org.apache.pdfbox.pdfwriter.COSWriter.doWriteSignature(COSWriter.java:688) > at > org.apache.pdfbox.pdfwriter.COSWriter.visitFromDocument(COSWriter.java:1039) > at org.apache.pdfbox.cos.COSDocument.accept(COSDocument.java:456) > at org.apache.pdfbox.pdfwriter.COSWriter.write(COSWriter.java:1360) > at org.apache.pdfbox.pdmodel.PDDocument.save(PDDocument.java:1121) > at com.qmplus.PDFTest.App.setKode(App.java:36) > at com.qmplus.PDFTest.AppTest.test(AppTest.java:35) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44) > at > org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) > at > org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41) > at > org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) > at > org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28) > at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:263) > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:69) > at > org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:48) > at org.junit.runners.ParentRunner$3.run(ParentRunner.java:231) > at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:60) > at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:229) > at org.junit.runners.ParentRunner.access$000(ParentRunner.java:50) > at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:222) > at org.junit.runners.ParentRunner.run(ParentRunner.java:292) > at > org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50) > at > org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390) > at > org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197) > The funny thing is, the output is created and looks to my eyes fine... -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa For more information on JIRA, see: http://www.atlassian.com/software/jira