Hi
I have just built a new report, based on a previously working one (I bascially stripped out all the report elements and pointed to a new information map), the section that just contain tables seem to be working but any of the sections with charts in result in the error message below when I try to view it. I'd be greatful if someone could explain what it actually means then I might be able to fix the report.
Root Cause: java.lang.NullPointerException
at com.sas.report.render.view.html.style.StyleClassUtil.fetchHoverColor(StyleClassUtil.java:27)
at com.sas.report.render.view.html.style.StyleClassUtil.createHoverStyleProperties(StyleClassUtil.java:51)
at com.sas.report.render.view.html.style.StyleClassUtil.writeHoverStyleSheetEntry(StyleClassUtil.java:71)
at com.sas.report.render.view.html.style.DefaultStyleClass.writeHover(DefaultStyleClass.java:170)
at com.sas.report.render.view.html.style.StyleManager.writeHoverStyleClass(StyleManager.java:1078)
at com.sas.report.render.view.html.style.StyleManager.write(StyleManager.java:1045)
at com.sas.report.render.view.html.HtmlView.writeStyles(HtmlView.java:356)
at com.sas.report.render.view.html.HtmlView.write(HtmlView.java:430)
at com.sas.apps.citation.model.report.DataProvider$StyleProvider.doWriteContent(DataProvider.java:1045)
at com.sas.apps.citation.model.report.DataProvider.processData(DataProvider.java:454)
at com.sas.apps.citation.model.report.DataProvider.getData(DataProvider.java:429)
at com.sas.apps.citation.model.report.DataProvider.provideData(DataProvider.java:147)
at com.sas.apps.citation.model.report.ContentProvider$ContentProviderTask.acquireReportPageContents(ContentProvider.java:450)
at com.sas.apps.citation.model.report.ContentProvider$ContentProviderTask.run(ContentProvider.java:373)
at com.sas.apps.citation.util.progress.AsyncCancellableHelper$MyRunnable.run(AsyncCancellableHelper.java:521)
at com.sas.apps.citation.util.thread.WorkerThread.doCurrentWorkNow(WorkerThread.java:151)
at com.sas.apps.citation.util.thread.WorkerThread.run(WorkerThread.java:195)
Which Caused: com.sas.apps.citation.webreport.RendererException: Error Rendering the Report [ java.lang.NullPointerException ]
at com.sas.apps.citation.model.report.ContentProvider.executeFetchContents(ContentProvider.java:255)
at com.sas.apps.citation.model.report.ContentProvider.fetchContents(ContentProvider.java:164)
at com.sas.apps.citation.model.report.ContentProvider.getContent(ContentProvider.java:138)
at com.sas.apps.citation.model.report.RenderedReportModel.getRenderedContent(RenderedReportModel.java:445)
at com.sas.apps.citation.model.report.RenderingImpl.renderContent(RenderingImpl.java:824)
at com.sas.apps.citation.view.contentgeneration.report.PageRenderer._renderCurrentPage_core(PageRenderer.java:221)
at com.sas.apps.citation.view.contentgeneration.report.PageRenderer.generatePageContents(PageRenderer.java:114)
at com.sas.apps.citation.view.beans.report.controller.ReportController.generatePageContents(ReportController.java:330)
at com.sas.apps.citation.view.beans.reportmanagement.OpenReport.generatePageContents(OpenReport.java:1575)
at com.sas.apps.citation.controller.action.report.ReportControllerAction._processGotoSectionCommand(ReportControllerAction.java:1114)
at com.sas.apps.citation.controller.action.report.ReportControllerAction.doPerform(ReportControllerAction.java:445)
at com.sas.apps.citation.controller.action.CitationAction._execute(CitationAction.java:191)
at com.sas.apps.citation.controller.action.CitationAction.execute(CitationAction.java:166)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:425)
[ 57 lines suppressed ]
Through trial and error I eventually found the answer - I had formatted the border and background fill to be what I thought was a "no fill" option - a kind of grey square at the end of the colour pallette - if I change these to white instead it works fine. So I guess that it lets you pick a square that isn't actually a colour.
Did the charts have a drill down or anything special about them? Obviously it's looking for something that is not there any longer.
There's a filter on the chart, and all the chart variables (barheight, bars and subgroups) contain variables which I can run queries on fine inthe information map. it's a simple clustered bar chart, nothing special about it.
Wow ... that's crazy.
The only thing I can think to do (and you may have already tried this) is just to recreate the chart. Maybe it's the way the chart itself is formatted or perhaps there is just some artifacts that are making it difficult for WRS to display the chart.
Through trial and error I eventually found the answer - I had formatted the border and background fill to be what I thought was a "no fill" option - a kind of grey square at the end of the colour pallette - if I change these to white instead it works fine. So I guess that it lets you pick a square that isn't actually a colour.
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.