Re: NPE in verifyPdfText

Marc Guillemot <[email protected]>
Newsgroups gmane.comp.web.canoo.webtest
Message-ID <[email protected]>
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]>>
>
>     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
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.