Как решить эту исключительную ситуацию nullPointer в отчете яшмы? - PullRequest
3 голосов
/ 26 марта 2010

Я новичок в отчете о яшме, мне нужно создать PDF-документ с BeanDatasource и вложенным отчетом. Я ссылаюсь на следующий блог "http://knol.google.com/k/jasper-reports-working-with-beans-and-sub-report#". Я отлично выполнил все шаги. Пока я запускаю отчет с помощью IReport, я могу получить документ в формате PDF с содержанием. Но когда мы пытаемся создать из Java-программы, я получаю исключение в следующей строке

Номер строки 110: " JasperFillManager.fillReportToFile (" C: /JasperReports/contacts.jasper ", параметры, новый JRBeanCollectionDataSource (TestPerson.getBeanCollection ())); "

и это следующая ошибка, которую я получаю в окне консоли Eclipse.

java.lang.NullPointerException at net.sf.jasperreports.engine.JRPropertiesMap.readObject (JRPropertiesMap.java:185) в sun.reflect.NativeMethodAccessorImpl.invoke0 (собственный метод) в sun.reflect.NativeMethodAccessorImpl.invoke (неизвестный источник) в sun.reflect.DelegatingMethodAccessorImpl.invoke (неизвестный источник) в java.lang.reflect.Method.invoke (неизвестный источник) в java.io.ObjectStreamClass.invokeReadObject (неизвестный источник) в java.io.ObjectInputStream.readSerialData (Неизвестный источник) в java.io.ObjectInputStream.readOrdinaryObject (неизвестный источник) в java.io.ObjectInputStream.readObject0 (неизвестный источник) в java.io.ObjectInputStream.defaultReadFields (Неизвестный источник) в java.io.ObjectInputStream.readSerialData (Неизвестный источник) в java.io.ObjectInputStream.readOrdinaryObject (неизвестный источник) в java.io.ObjectInputStream.readObject0 (неизвестный источник) в java.io.ObjectInputStream.readArray (Неизвестный источник) в java.io.ObjectInputStream.readObject0 (неизвестный источник) в java.io.ObjectInputStream.defaultReadFields (Неизвестный источник) в java.io.ObjectInputStream.readSerialData (Неизвестный источник) в java.io.ObjectInputStream.readOrdinaryObject (неизвестный источник) в java.io.ObjectInputStream.readObject0 (неизвестный источник) в java.io.ObjectInputStream.defaultReadFields (Неизвестный источник) в java.io.ObjectInputStream.readSerialData (Неизвестный источник) в java.io.ObjectInputStream.readOrdinaryObject (неизвестный источник) в java.io.ObjectInputStream.readObject0 (неизвестный источник) в java.io.ObjectInputStream.readObject (неизвестный источник) в net.sf.jasperreports.engine.util.JRLoader.loadObject (JRLoader.java:88) в net.sf.jasperreports.engine.util.JRLoader.loadObjectFromLocation (JRLoader.java:257) в net.sf.jasperreports.engine.fill.JRFillSubreport.evaluateSubreport (JRFillSubreport.java:308) в net.sf.jasperreports.engine.fill.JRFillSubreport.evaluate (JRFillSubreport.java:257) в net.sf.jasperreports.engine.fill.JRFillElementContainer.evaluate (JRFillElementContainer.java:275) в net.sf.jasperreports.engine.fill.JRFillBand.evaluate (JRFillBand.java:426) в net.sf.jasperreports.engine.fill.JRVerticalFiller.fillColumnBand (JRVerticalFiller.java:1380) в net.sf.jasperreports.engine.fill.JRVerticalFiller.fillDetail (JRVerticalFiller.java:692) в net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReportStart (JRVerticalFiller.java:255) в net.sf.jasperreports.engine.fill.JRVerticalFiller.fillReport (JRVerticalFiller.java:113) в net.sf.jasperreports.engine.fill.JRBaseFiller.fill (JRBaseFiller.java:891) в net.sf.jasperreports.engine.fill.JRBaseFiller.fill (JRBaseFiller.java:814) в net.sf.jasperreports.engine.fill.JRFiller.fillReport (JRFiller.java:89) в net.sf.jasperreports.engine.JasperFillManager.fillReport (JasperFillManager.java:601) at test.TestJasperReport.main (TestJasperReport.java:110)

Ответы [ 2 ]

7 голосов
/ 23 июля 2010

У меня была похожая проблема, и я обнаружил, что в iReports произошло автоматическое обновление, а файлы, которые он создает, больше не совместимы с версией Jasper, введенной в сборку моего приложения.

Я решил эту проблему, загрузив самые последние iReports и самые последние отчеты Jasper.

iReport v3.7.4 и Jasper Reports v3.7.4.

1 голос
/ 26 марта 2010

Похоже, что одно из свойств, которые вы передаете в свой отчет, равно нулю.

Я бы предложил пройтись по коду в отладке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...