created an attachment (id=155295)
report design

description:
  npe was thrown out while previewing a single data item in webviewer.

test build:
birt2.5.2 v20100105-0630

step to reproduce:

1. use the report attached
2. preview it in webviwer

error log:
java.lang.nullpointerexception
   at org.eclipse.birt.core.archive.compound.archiveentryoutputstream.flush(archiveentryoutputstream.java:129)
   at java.io.dataoutputstream.flush(dataoutputstream.java:106)
   at java.io.filteroutputstream.close(filteroutputstream.java:140)
   at org.eclipse.birt.report.engine.data.dte.datagenerationengine.shutdown(datagenerationengine.java:136)
   at org.eclipse.birt.report.engine.executor.executioncontext.close(executioncontext.java:470)
   at org.eclipse.birt.report.engine.api.impl.enginetask.close(enginetask.java:1448)
   at org.eclipse.birt.report.engine.api.impl.runtask.close(runtask.java:300)
   at org.eclipse.birt.report.service.reportengineservice.runreport(reportengineservice.java:1327)
   at org.eclipse.birt.report.service.birtviewerreportservice.runreport(birtviewerreportservice.java:158)
   at org.eclipse.birt.report.service.actionhandler.birtrunreportactionhandler.__execute(birtrunreportactionhandler.java:81)
   at org.eclipse.birt.report.service.actionhandler.birtgetpageactionhandler.__checkdocumentexists(birtgetpageactionhandler.java:58)
   at org.eclipse.birt.report.service.actionhandler.abstractgetpageactionhandler.prepareparameters(abstractgetpageactionhandler.java:119)
   at org.eclipse.birt.report.service.actionhandler.abstractgetpageactionhandler.__execute(abstractgetpageactionhandler.java:104)
   at org.eclipse.birt.report.service.actionhandler.abstractbaseaction
java.lang.nullpointerexception
	at org.eclipse.birt.core.archive.compound.archiveentryoutputstream.flush(archiveentryoutputstream.java:129)
	at java.io.dataoutputstream.flush(dataoutputstream.java:106)
	at java.io.filteroutputstream.close(filteroutputstream.java:140)
	at org.eclipse.birt.data.engine.executor.transform.cachedresultset.dosave(cachedresultset.java:284)
	at org.eclipse.birt.data.engine.impl.document.rdsaveutil.saveforgeneration(rdsaveutil.java:92)
	at org.eclipse.birt.data.engine.impl.document.rdsaveutil.saveresultiterator(rdsaveutil.java:61)
	at org.eclipse.birt.data.engine.impl.document.rdsave.saveresultiterator(rdsave.java:235)
	at org.eclipse.birt.data.engine.impl.resultiterator$rdsavehelper.dosave(resultiterator.java:1165)
	at org.eclipse.birt.data.engine.impl.resultiterator$rdsavehelper.dosaveexpr(resultiterator.java:1130)
	at org.eclipse.birt.data.engine.impl.bindingcolumnsevalutil.getcolumnsvalue(bindingcolumnsevalutil.java:201)
	at org.eclipse.birt.data.engine.impl.resultiterator.preparecurrentrow(resultiterator.java:665)
	at org.eclipse.birt.data.engine.impl.resultiterator.<init>(resultiterator.java:159)
	at org.eclipse.birt.data.engine.impl.resultiterator2.<init>(resultiterator2.java:50)
	at org.eclipse.birt.data.engine.impl.queryresults.getresultiterator(queryresults.java:199)
	at org.eclipse.birt.report.engine.data.dte.queryresultset.<init>(queryresultset.java:98)
	at org.eclipse.birt.report.engine.data.dte.dtedataengine.doexecutequery(dtedataengine.java:165)
	at org.eclipse.birt.report.engine.data.dte.datagenerationengine.doexecutequery(datagenerationengine.java:72)
	at org.eclipse.birt.report.engine.data.dte.abstractdataengine.execute(abstractdataengine.java:254)
	at org.eclipse.birt.report.engine.executor.executioncontext.executequery(executioncontext.java:1841)
	at org.eclipse.birt.report.engine.executor.queryitemexecutor.executequery(queryitemexecutor.java:80)
	at org.eclipse.birt.report.engine.executor.dataitemexecutor.execute(dataitemexecutor.java:75)
	at org.eclipse.birt.report.engine.internal.executor.wrap.wrappedreportitemexecutor.execute(wrappedreportitemexecutor.java:46)
	at org.eclipse.birt.report.engine.internal.executor.emitter.reportitememitterexecutor.execute(reportitememitterexecutor.java:46)
	at org.eclipse.birt.report.engine.internal.executor.dup.suppressduplicateitemexecutor.execute(suppressduplicateitemexecutor.java:43)
	at org.eclipse.birt.report.engine.layout.html.htmlblockstackinglm.layoutnodes(htmlblockstackinglm.java:65)
	at org.eclipse.birt.report.engine.layout.html.htmlpagelm.layout(htmlpagelm.java:90)
	at org.eclipse.birt.report.engine.layout.html.htmlreportlayoutengine.layout(htmlreportlayoutengine.java:99)
	at org.eclipse.birt.report.engine.presentation.reportdocumentbuilder.build(reportdocumentbuilder.java:258)
	at org.eclipse.birt.report.engine.api.impl.runtask.dorun(runtask.java:252)
	at org.eclipse.birt.report.engine.api.impl.runtask.run(runtask.java:111)
	at com.actuate.reportapi.engine.birt.reportgenerationtask.runtask(unknown source)
	at com.actuate.reportapi.engine.birt.reportgenerationtask.generatereport(unknown source)
	at com.actuate.reportapi.engine.reportgenerationtaskbase.dotask(unknown source)
	at com.actuate.reportapi.engine.task.execute(unknown source)
	at com.actuate.reportapi.enginemanager.threadpool$controlrunnable.run(unknown source)
	at java.lang.thread.run(thread.java:619)
fixed.
verified in v20100106-0630