here's what we have.

in a stock D2W app there is a method in pageWrapper:

public String bodyClass() {
        String result = null;
        String pageConfig = 
(String)d2wContext().valueForKey("pageConfiguration");
        if (pageConfig != null && pageConfig.length() > 0) {
                result = pageConfig + "Body";
        }
        return result;
}

Obviously it is setting the css class for the context. When I return from 
making the jasper report pdf, the d2wcontect is null and there is the NPE.

as a work around, I added to the method that checks the context:

if (d2wContext() != null) {
                
NSLog.out.appendln("*** pageWrapper  pageConfiguration  is not  null =  ***** 
"); 

        pageConfig = (String)d2wContext().valueForKey("pageConfiguration");
}

I get a very ugly page. now I can figure out why the compiled jasper report is 
not using any of the fonts that I am specifying.

Are there any gotchas with the different versions of iReport and the version of 
Jasper Reports in wonder?

Ted

--- On Tue, 4/3/12, Kieran Kelleher <kelleh...@gmail.com> wrote:

> From: Kieran Kelleher <kelleh...@gmail.com>
> Subject: Re: JasperReports progress
> To: "Theodore Petrosky" <tedp...@yahoo.com>
> Cc: webobjects-dev@lists.apple.com
> Date: Tuesday, April 3, 2012, 6:34 PM
> The NPE is at:
> 
> at
> com.as.application.ui.components.PageWrapper.bodyClass(PageWrapper.java:27)
> 
> that is your component ..... so why don't you look there to
> see what is causing the NPE?
> 
> On Apr 3, 2012, at 4:00 PM, Theodore Petrosky wrote:
> 
> > So I've made progress but am stumped. I created a
> customcomponent and used a rule to make one of the
> displayPropertyKeys a hyperlink.
> > 
> > I am basically using the JasperReportExample. I created
> a hyperlink as one of the property keys. this will fire off
> the method that starts the jasper reports process:
> > 
> > public WOActionResults printBrief() {   
>     
> >         
> >         Brief theBrief =
> (Brief)object();
> >         
> >        
> Callable<File> reportTask =
> Reports.createBriefReportTask(theBrief);
> >         
> >        
> CCAjaxLongResponsePage nextPage =
> pageWithName(CCAjaxLongResponsePage.class);
> >         
> >         // Push the task
> into the long response page
> >        
> nextPage.setTask(reportTask);
> >         
> >         // Controller for
> handling the Callable result in the long response page
> >        
> FileTaskDownloadController nextPageController = new
> FileTaskDownloadController();
> >         
> >         // Hyperlink text
> on the "Your file is downloaded page" to get back here
> >        
> nextPageController.setReturnLinkText("Reports Menu");
> >         
> >         // The filename
> for the download
> >        
> nextPageController.setDownloadFileNameForClient("BriefReport.pdf");
> >         
> >        
> nextPage.setNextPageForResultController(nextPageController);
> >         
> >        
> NSLog.out.appendln("*** nextPage =  ***** " +
> nextPage); 
> > 
> >         
> >         return nextPage;
> >     }
> > 
> > Here is the Reports method:
> > 
> >     public static Callable<File>
> createBriefReportTask(Brief b) {
> >        
>         
> >         String
> reportDescription = "Printed Brief";
> >         
> >        
> HashMap<String, Object> parameters = new
> HashMap<String, Object>();
> >        
> parameters.put("reportDescription", reportDescription);
> >        
> parameters.put("userName", "User From session");
> >     
> >         EOQualifier
> qualifier = ERXQ.equals(Brief.JOB_NUMBER_KEY,
> b.jobNumber());
> > 
> >        
> ERXFetchSpecification<Brief> fs = new
> ERXFetchSpecification<Brief>(Brief.ENTITY_NAME,
> qualifier, null);
> > 
> >        
> ERJRFetchSpecificationReportTask reportTask = new
> ERJRFetchSpecificationReportTask(fs,
> jasperCompiledReportFileName, parameters);
> >         
> >         return
> reportTask;
> > 
> >     }
> > 
> > indeed it goes out and starts to create the pdf. I see
> the the pdf in
> /var/folders/2d/23408oihsdvh08r23/T/Brief3234987239872398472.pdf
> > 
> > However, just when DownloadIsComplete's
> appendToResponse method is called I get errors:
> > 
> > 
> > Apr 03 15:33:34 ASBriefsD2W[57285] WARN 
> NSLog  -
> <com.webobjects.appserver._private.WOComponentRequestHandler>:
> Exception occurred while handling request:
> > java.lang.NullPointerException
> > [2012-4-3 15:33:34 EDT] <WorkerThread0>
> java.lang.NullPointerException
> >     at
> com.as.application.ui.components.PageWrapper.bodyClass(PageWrapper.java:27)
> >     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
> com.webobjects.foundation.NSKeyValueCoding$ValueAccessor$1.methodValue(NSKeyValueCoding.java:636)
> >     at
> com.webobjects.foundation.NSKeyValueCoding$_MethodBinding.valueInObject(NSKeyValueCoding.java:1134)
> >     at
> com.webobjects.foundation.NSKeyValueCoding$DefaultImplementation.valueForKey(NSKeyValueCoding.java:1324)
> >     at
> com.webobjects.appserver.WOComponent.valueForKey(WOComponent.java:1736)
> >     at
> com.webobjects.foundation.NSKeyValueCoding$Utility.valueForKey(NSKeyValueCoding.java:447)
> >     at
> com.webobjects.foundation.NSKeyValueCodingAdditions$DefaultImplementation.valueForKeyPath(NSKeyValueCodingAdditions.java:212)
> >     at
> com.webobjects.appserver.WOComponent.valueForKeyPath(WOComponent.java:1804)
> >     at
> com.webobjects.appserver._private.WOKeyValueAssociation.valueInComponent(WOKeyValueAssociation.java:50)
> >     at
> com.webobjects.appserver._private.WOHTMLDynamicElement.stringValueInContext(WOHTMLDynamicElement.java:537)
> >     at
> com.webobjects.appserver._private.WOHTMLDynamicElement.classInContext(WOHTMLDynamicElement.java:542)
> >     at
> com.webobjects.appserver._private.WOHTMLDynamicElement._appendClassAndIdToResponse(WOHTMLDynamicElement.java:518)
> > 
> > I can provide more but I have to start somewhere. 
> > 
> > I don't know  what else to says other than
> 'HELP'!!! i'm drowning.
> > 
> > Ted
> > 
> > 
> > _______________________________________________
> > Do not post admin requests to the list. They will be
> ignored.
> > Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
> > Help/Unsubscribe/Update your Subscription:
> > https://lists.apple.com/mailman/options/webobjects-dev/kelleherk%40gmail.com
> > 
> > This email sent to kelleh...@gmail.com
> 
> 

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (Webobjects-dev@lists.apple.com)
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to arch...@mail-archive.com

Reply via email to