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