Re: NPE in verifyPdfText
Marc Guillemot <[email protected]>
| Newsgroups | gmane.comp.web.canoo.webtest |
|---|---|
| Message-ID | <[email protected]> |
this means that someone has to do the work to upgrade the PdfBox version used in WebTest, that's all. You're welcome ;-) Cheers, Marc. -- HtmlUnit support & consulting from the source Blog: http://mguillem.wordpress.com On 12/03/2010 03:22 PM, Lisa Crispin wrote: > Does that mean there's no solution, we just can't have tests for this > doc anymore? Waaah. > > On Fri, Dec 3, 2010 at 7:13 AM, Marc Guillemot <[email protected] > <mailto:[email protected]>> wrote: > > According to the details of the issue, the problem is fixed since > PdfBox 0.8... but WebTest is still using 0.7.3 :-( > > Cheers, > Marc. > -- > HtmlUnit support & consulting from the source > Blog: http://mguillem.wordpress.com > > > > On 12/03/2010 12:03 AM, Lisa Crispin wrote: > > Thanks! That's kind of an old post though. Acrobat 9 seems to > have been > out for quite awhile. You think that PDFBox still doesn't work > with it? > I wonder how to go back to an old version of Acrobat. > -- Lisa > > 2010/12/2 Dierk König <[email protected] > <mailto:[email protected]> > <mailto:[email protected] <mailto:[email protected]>>> > > > Hi Lisa, > > always good to hear from you ;-) > > The issue appears to be connected to the Acrobat version that > created the PDF, see > http://markmail.org/message/64ls3daphdh3pxzo > > cheers > Dierk > > Am 02.12.2010 um 22:09 schrieb Lisa Crispin: > > We got a new version of a pdf that we've had for years > and years, > a page was added to it is all. Now all our tests that > verify this > document are failing with an NPE. The traceback is > below. There > must be something wrong with the PDF, but we can't see > it. Anyone > have any suggestions how we can debug this? I can see > the PDF and > the actual page in question in the test result output, > and it has > the right text on it and everything. > > The step that's failing is: > <pdfVerifyText description="verify first page content" > startPage="1" > endPage="1" > text="SUMMARY PLAN DESCRIPTION"/> > > Here is the traceback: > > /var/hudson/workspace/WebTest-NonTradeTests-Build/trunk/src/web_test/modules/verifySPD40.xml:8: > Unexpected exception caught: java.lang.NullPointerException > at > > com.canoo.webtest.steps.StepUtil.handleException(StepUtil.java:120) > at > com.canoo.webtest.steps.Step.handleException(Step.java:387) > at com.canoo.webtest.steps.Step.execute(Step.java:118) > at > > org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) > at > sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source) > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > > org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105) > at org.apache.tools.ant.Task.perform(Task.java:348) > at > > com.canoo.webtest.ant.TestStepSequence.executeSteps(TestStepSequence.java:43) > at > > com.canoo.webtest.ant.TestStepSequence.doExecute(TestStepSequence.java:31) > at com.canoo.webtest.steps.Step.execute(Step.java:103) > 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.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105) > at org.apache.tools.ant.Task.perform(Task.java:348) > at > > com.canoo.webtest.ant.WebtestTask.executeSteps(WebtestTask.java:236) > at > com.canoo.webtest.ant.WebtestTask.execute(WebtestTask.java:208) > at > > org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) > at > sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source) > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > > org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105) > at org.apache.tools.ant.Task.perform(Task.java:348) > at org.apache.tools.ant.Target.execute(Target.java:357) > at > org.apache.tools.ant.Target.performTasks(Target.java:385) > at > > org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329) > at > > org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38) > at > org.apache.tools.ant.Project.executeTargets(Project.java:1181) > at > org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:416) > at > > org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) > at > sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source) > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > > org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105) > at org.apache.tools.ant.Task.perform(Task.java:348) > at org.apache.tools.ant.Target.execute(Target.java:357) > at > org.apache.tools.ant.Target.performTasks(Target.java:385) > at > > org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329) > at > > org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38) > at > org.apache.tools.ant.Project.executeTargets(Project.java:1181) > at > org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:416) > at > > org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) > at > sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source) > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > > org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105) > at org.apache.tools.ant.Task.perform(Task.java:348) > at org.apache.tools.ant.Target.execute(Target.java:357) > at > org.apache.tools.ant.Target.performTasks(Target.java:385) > at > > org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329) > at > > org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38) > at > org.apache.tools.ant.Project.executeTargets(Project.java:1181) > at > org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:416) > at > > org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:105) > at > > org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) > at > sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source) > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > > org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105) > at org.apache.tools.ant.Task.perform(Task.java:348) > at org.apache.tools.ant.Target.execute(Target.java:357) > at > org.apache.tools.ant.Target.performTasks(Target.java:385) > at > > org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329) > at > org.apache.tools.ant.Project.executeTarget(Project.java:1298) > at > > org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) > at > org.apache.tools.ant.Project.executeTargets(Project.java:1181) > at org.apache.tools.ant.Main.runBuild(Main.java:698) > at org.apache.tools.ant.Main.startAnt(Main.java:199) > at > org.apache.tools.ant.launch.Launcher.run(Launcher.java:257) > at > org.apache.tools.ant.launch.Launcher.main(Launcher.java:104) > Caused by: java.lang.NullPointerException > at > org.pdfbox.pdmodel.PDPageNode.getAllKids(PDPageNode.java:194) > at > org.pdfbox.pdmodel.PDPageNode.getAllKids(PDPageNode.java:182) > at > > org.pdfbox.pdmodel.PDDocumentCatalog.getAllPages(PDDocumentCatalog.java:226) > at > > org.pdfbox.util.PDFTextStripper.writeText(PDFTextStripper.java:216) > at > > org.pdfbox.util.PDFTextStripper.getText(PDFTextStripper.java:149) > at > > com.canoo.webtest.plugins.pdftest.htmlunit.pdfbox.PdfBoxPDFPage.getTextInternal(PdfBoxPDFPage.java:204) > at > > com.canoo.webtest.plugins.pdftest.htmlunit.pdfbox.PdfBoxPDFPage.getText(PdfBoxPDFPage.java:196) > at > > com.canoo.webtest.plugins.pdftest.PdfVerifyTextStep.verifyPdf(PdfVerifyTextStep.java:87) > at > > com.canoo.webtest.plugins.pdftest.AbstractVerifyPdfStep.doExecute(AbstractVerifyPdfStep.java:22) > at com.canoo.webtest.steps.Step.execute(Step.java:103) > ... 70 more > --- Nested Exception --- > java.lang.NullPointerException > at > org.pdfbox.pdmodel.PDPageNode.getAllKids(PDPageNode.java:194) > at > org.pdfbox.pdmodel.PDPageNode.getAllKids(PDPageNode.java:182) > at > > org.pdfbox.pdmodel.PDDocumentCatalog.getAllPages(PDDocumentCatalog.java:226) > at > > org.pdfbox.util.PDFTextStripper.writeText(PDFTextStripper.java:216) > at > > org.pdfbox.util.PDFTextStripper.getText(PDFTextStripper.java:149) > at > > com.canoo.webtest.plugins.pdftest.htmlunit.pdfbox.PdfBoxPDFPage.getTextInternal(PdfBoxPDFPage.java:204) > at > > com.canoo.webtest.plugins.pdftest.htmlunit.pdfbox.PdfBoxPDFPage.getText(PdfBoxPDFPage.java:196) > at > > com.canoo.webtest.plugins.pdftest.PdfVerifyTextStep.verifyPdf(PdfVerifyTextStep.java:87) > at > > com.canoo.webtest.plugins.pdftest.AbstractVerifyPdfStep.doExecute(AbstractVerifyPdfStep.java:22) > at com.canoo.webtest.steps.Step.execute(Step.java:103) > at > > org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) > at > sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source) > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > > org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105) > at org.apache.tools.ant.Task.perform(Task.java:348) > at > > com.canoo.webtest.ant.TestStepSequence.executeSteps(TestStepSequence.java:43) > at > > com.canoo.webtest.ant.TestStepSequence.doExecute(TestStepSequence.java:31) > at com.canoo.webtest.steps.Step.execute(Step.java:103) > 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.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105) > at org.apache.tools.ant.Task.perform(Task.java:348) > at > > com.canoo.webtest.ant.WebtestTask.executeSteps(WebtestTask.java:236) > at > com.canoo.webtest.ant.WebtestTask.execute(WebtestTask.java:208) > at > > org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) > at > sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source) > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > > org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105) > at org.apache.tools.ant.Task.perform(Task.java:348) > at org.apache.tools.ant.Target.execute(Target.java:357) > at > org.apache.tools.ant.Target.performTasks(Target.java:385) > at > > org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329) > at > > org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38) > at > org.apache.tools.ant.Project.executeTargets(Project.java:1181) > at > org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:416) > at > > org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) > at > sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source) > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > > org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105) > at org.apache.tools.ant.Task.perform(Task.java:348) > at org.apache.tools.ant.Target.execute(Target.java:357) > at > org.apache.tools.ant.Target.performTasks(Target.java:385) > at > > org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329) > at > > org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38) > at > org.apache.tools.ant.Project.executeTargets(Project.java:1181) > at > org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:416) > at > > org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) > at > sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source) > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > > org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105) > at org.apache.tools.ant.Task.perform(Task.java:348) > at org.apache.tools.ant.Target.execute(Target.java:357) > at > org.apache.tools.ant.Target.performTasks(Target.java:385) > at > > org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329) > at > > org.apache.tools.ant.helper.SingleCheckExecutor.executeTargets(SingleCheckExecutor.java:38) > at > org.apache.tools.ant.Project.executeTargets(Project.java:1181) > at > org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:416) > at > > org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:105) > at > > org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288) > at > sun.reflect.GeneratedMethodAccessor2.invoke(Unknown Source) > at > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > > org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:105) > at org.apache.tools.ant.Task.perform(Task.java:348) > at org.apache.tools.ant.Target.execute(Target.java:357) > at > org.apache.tools.ant.Target.performTasks(Target.java:385) > at > > org.apache.tools.ant.Project.executeSortedTargets(Project.java:1329) > at > org.apache.tools.ant.Project.executeTarget(Project.java:1298) > at > > org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41) > at > org.apache.tools.ant.Project.executeTargets(Project.java:1181) > at org.apache.tools.ant.Main.runBuild(Main.java:698) > at org.apache.tools.ant.Main.startAnt(Main.java:199) > at > org.apache.tools.ant.launch.Launcher.run(Launcher.java:257) > at > org.apache.tools.ant.launch.Launcher.main(Launcher.java:104) > > -- > Lisa Crispin > Co-author with Janet Gregory, _Agile Testing: A > Practical Guide > for Testers and Agile Teams_ (Addison-Wesley 2009) > Contributor to _Beautiful Testing_ (O'Reilly 2009) > http://lisacrispin.com <http://lisacrispin.com/> > @lisacrispin on Twitter > > > > > > -- > Lisa Crispin > Co-author with Janet Gregory, _Agile Testing: A Practical Guide for > Testers and Agile Teams_ (Addison-Wesley 2009) > Contributor to _Beautiful Testing_ (O'Reilly 2009) > http://lisacrispin.com > @lisacrispin on Twitter > > > > _______________________________________________ > WebTest mailing list > [email protected] <mailto:[email protected]> > http://lists.canoo.com/mailman/listinfo/webtest > > > > > -- > Lisa Crispin > Co-author with Janet Gregory, _Agile Testing: A Practical Guide for > Testers and Agile Teams_ (Addison-Wesley 2009) > Contributor to _Beautiful Testing_ (O'Reilly 2009) > http://lisacrispin.com > @lisacrispin on Twitter >