created an attachment (id=160156)
library

description:
npe thrown out when preview a report which includes a library crosstab and a crosstab using library cube

build:
2.6.0.v20100225-0631

steps to reproduce:
1. new report use xtab and cube from library
2. new a xtab using the extended cube
3. preview the report

actual result:
npe thrown out. if delete one of the two xtab, no error

expect result:
no error

errorlog:
an exception occurred during processing. please see the following message for details:
exception.error
error happens when create measure. 
exception.error ( 1 time(s) )
detail : org.eclipse.birt.report.engine.api.engineexception: an exception occurred during processing. please see the following message for details:
exception.error
error happens when create measure.
	at org.eclipse.birt.report.engine.executor.executormanager$executorcontext.executequery(executormanager.java:449)
	at org.eclipse.birt.report.item.crosstab.core.re.executor.basecrosstabexecutor.executequery(basecrosstabexecutor.java:114)
	at org.eclipse.birt.report.item.crosstab.core.re.executor.crosstabreportitemexecutor.execute(crosstabreportitemexecutor.java:102)
	at org.eclipse.birt.report.engine.executor.extendeditemexecutor.execute(extendeditemexecutor.java:62)
	at org.eclipse.birt.report.engine.internal.executor.dup.suppressduplicateitemexecutor.execute(suppressduplicateitemexecutor.java:43)
	at org.eclipse.birt.report.engine.internal.executor.wrap.wrappedreportitemexecutor.execute(wrappedreportitemexecutor.java:46)
	at org.eclipse.birt.report.engine.internal.executor.l18n.localizedreportitemexecutor.execute(localizedreportitemexecutor.java:34)
	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.api.impl.runandrendertask.dorun(runandrendertask.java:170)
	at org.eclipse.birt.report.engine.api.impl.runandrendertask.run(runandrendertask.java:75)
	at org.eclipse.birt.report.service.reportengineservice.runandrenderreport(reportengineservice.java:920)
	at org.eclipse.birt.report.service.birtviewerreportservice.runandrenderreport(birtviewerreportservice.java:973)
	at org.eclipse.birt.report.service.actionhandler.birtgetpageallactionhandler.__execute(birtgetpageallactionhandler.java:131)
	at org.eclipse.birt.report.service.actionhandler.abstractbaseactionhandler.execute(abstractbaseactionhandler.java:90)
	at org.eclipse.birt.report.soapengine.processor.abstractbasedocumentprocessor.__executeaction(abstractbasedocumentprocessor.java:47)
	at org.eclipse.birt.report.soapengine.processor.abstractbasecomponentprocessor.executeaction(abstractbasecomponentprocessor.java:143)
	at org.eclipse.birt.report.soapengine.processor.birtdocumentprocessor.handlegetpageall(birtdocumentprocessor.java:183)
	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:585)
	at org.eclipse.birt.report.soapengine.processor.abstractbasecomponentprocessor.process(abstractbasecomponentprocessor.java:112)
	at org.eclipse.birt.report.soapengine.endpoint.birtsoapbindingimpl.getupdatedobjects(birtsoapbindingimpl.java:66)
	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:585)
	at org.apache.axis.providers.java.rpcprovider.invokemethod(rpcprovider.java:397)
	at org.apache.axis.providers.java.rpcprovider.processmessage(rpcprovider.java:186)
	at org.apache.axis.providers.java.javaprovider.invoke(javaprovider.java:323)
	at org.apache.axis.strategies.invocationstrategy.visit(invocationstrategy.java:32)
	at org.apache.axis.simplechain.dovisiting(simplechain.java:118)
	at org.apache.axis.simplechain.invoke(simplechain.java:83)
	at org.apache.axis.handlers.soap.soapservice.invoke(soapservice.java:454)
	at org.apache.axis.server.axisserver.invoke(axisserver.java:281)
	at org.apache.axis.transport.http.axisservlet.dopost(axisservlet.java:699)
	at org.eclipse.birt.report.servlet.birtsoapmessagedispatcherservlet.dopost(birtsoapmessagedispatcherservlet.java:265)
	at javax.servlet.http.httpservlet.service(httpservlet.java:727)
	at org.apache.axis.transport.http.axisservletbase.service(axisservletbase.java:327)
	at javax.servlet.http.httpservlet.service(httpservlet.java:820)
	at org.eclipse.birt.report.servlet.birtsoapmessagedispatcherservlet.service(birtsoapmessagedispatcherservlet.java:122)
	at org.eclipse.equinox.http.registry.internal.servletmanager$servletwrapper.service(servletmanager.java:180)
	at org.eclipse.equinox.http.servlet.internal.servletregistration.service(servletregistration.java:61)
	at org.eclipse.equinox.http.servlet.internal.proxyservlet.processalias(proxyservlet.java:126)
	at org.eclipse.equinox.http.servlet.internal.proxyservlet.service(proxyservlet.java:60)
	at javax.servlet.http.httpservlet.service(httpservlet.java:820)
	at org.eclipse.equinox.http.jetty.internal.httpservermanager$internalhttpserviceservlet.service(httpservermanager.java:318)
	at org.mortbay.jetty.servlet.servletholder.handle(servletholder.java:502)
	at org.mortbay.jetty.servlet.servlethandler.handle(servlethandler.java:380)
	at org.mortbay.jetty.servlet.sessionhandler.handle(sessionhandler.java:181)
	at org.mortbay.jetty.handler.contexthandler.handle(contexthandler.java:765)
	at org.mortbay.jetty.handler.handlerwrapper.handle(handlerwrapper.java:152)
	at org.mortbay.jetty.server.handle(server.java:324)
	at org.mortbay.jetty.httpconnection.handlerequest(httpconnection.java:535)
	at org.mortbay.jetty.httpconnection$requesthandler.content(httpconnection.java:880)
	at org.mortbay.jetty.httpparser.parsenext(httpparser.java:748)
	at org.mortbay.jetty.httpparser.parseavailable(httpparser.java:213)
	at org.mortbay.jetty.httpconnection.handle(httpconnection.java:404)
	at org.mortbay.io.nio.selectchannelendpoint.run(selectchannelendpoint.java:409)
	at org.mortbay.thread.queuedthreadpool$poolthread.run(queuedthreadpool.java:520)
caused by: org.eclipse.birt.report.data.adapter.api.adapterexception: an exception occurred during processing. please see the following message for details:
exception.error
error happens when create measure.
	at org.eclipse.birt.report.data.adapter.impl.datarequestsessionimpl.execute(datarequestsessionimpl.java:584)
	at org.eclipse.birt.report.engine.data.dte.dtedataengine.doexecutecube(dtedataengine.java:222)
	at org.eclipse.birt.report.engine.data.dte.abstractdataengine.execute(abstractdataengine.java:270)
	at org.eclipse.birt.report.engine.executor.executormanager$executorcontext.executequery(executormanager.java:439)
	... 61 more
caused by: org.eclipse.birt.data.engine.core.dataexception: exception.error
error happens when create measure.
	at org.eclipse.birt.report.data.adapter.impl.datarequestsessionimpl.materializecube(datarequestsessionimpl.java:700)
	at org.eclipse.birt.report.data.adapter.impl.datarequestsessionimpl.execute(datarequestsessionimpl.java:573)
	... 64 more
caused by: org.eclipse.birt.report.data.adapter.api.adapterexception: error happens when create measure.
	at org.eclipse.birt.report.data.adapter.impl.datarequestsessionimpl.createcube(datarequestsessionimpl.java:914)
	at org.eclipse.birt.report.data.adapter.impl.datarequestsessionimpl.materializecube(datarequestsessionimpl.java:683)
	... 65 more
caused by: java.lang.nullpointerexception
	at org.eclipse.birt.report.data.adapter.impl.datasetiterator$resultmeta.getfieldindex(datasetiterator.java:322)
	at org.eclipse.birt.report.data.adapter.impl.datasetiterator.getfieldindex(datasetiterator.java:190)
	at org.eclipse.birt.data.engine.olap.data.impl.facttable.facttableaccessor.getsortedfacttablerows(facttableaccessor.java:380)
	at org.eclipse.birt.data.engine.olap.data.impl.facttable.facttableaccessor.savefacttable(facttableaccessor.java:83)
	at org.eclipse.birt.data.engine.olap.data.impl.cube.create(cube.java:111)
	at org.eclipse.birt.data.engine.olap.data.api.cube.cubematerializer.createcube(cubematerializer.java:201)
	at org.eclipse.birt.report.data.adapter.impl.datarequestsessionimpl.createcube(datarequestsessionimpl.java:901)
	... 66 more
created an attachment (id=160157)
report
no such issue detected in 100517 nightly build, mark it fixed.
verify the bug