Scripted Datsource Problem with Images [message #263810] |
Mon, 31 December 2007 01:07  |
Eclipse User |
|
|
|
Hi,
I came up with a very simple report to illustrate this problem. Its a
report with a scripted datasource which simply displays a list of images.
(Stored as Blobs in the database). I am using birt incorporaed into a web
app by the way.
I pass in a list of images (as a list of byte arrays) as 'printData'. I
tried both the latest stable build of the report engine and tried a more
advanced build (birt-runtime-S20071217.zip) the error remains.
I hope someone can advice me on this problem. Many thanks in advance.
The Report Generating code:
protected void executeReport(HttpServletRequest req,
HttpServletResponse resp, String templateFileName) throws Exception {
HashMap parameters = (HashMap)BaseCtrlUtils.getSessionObject(req,
"parameters");
BaseCtrlUtils.removeSessionObject(req, "parameters");
//via hashmap
List printData = (ArrayList)
BaseCtrlUtils.getSessionObject(req, "printData");
BaseCtrlUtils.removeSessionObject(req, "printData");
IReportEngine birtReportEngine = null;
Logger logger = Logger.getLogger("org.eclipse.birt");
resp.setContentType( "application/pdf" );
resp.setHeader ("Content-Disposition","inline; filename=test.pdf");
ServletContext sc = req.getSession().getServletContext();
birtReportEngine = birtEngine.getBirtEngine(sc);
//setup image directory
HTMLRenderOption renderOption = new HTMLRenderOption();
renderOption.setBaseImageURL(req.getContextPath() + "/images");
renderOption.setImageDirectory(sc.getRealPath("/images"));
logger.log(Level.FINE, "image directory " + sc.getRealPath("/images"));
IReportRunnable design = null;
IRunAndRenderTask task = null;
try {
String path = sc.getRealPath("/");
design = birtReportEngine.openReportDesign(path + "WEB-INF/Reports/" +
templateFileName);
//create task to run and render report
task = birtReportEngine
.createRunAndRenderTask(design);
if(parameters!=null) {
task.setParameterValues(parameters);
}
HashMap appContext = new HashMap();
appContext.put("printData", printData);
task.setAppContext(appContext);
task.setRenderOption(renderOption);
//set output options
HTMLRenderOption options = new HTMLRenderOption();
options.setOutputFormat(HTMLRenderOption.OUTPUT_FORMAT_PDF);
options.setOutputStream(resp.getOutputStream());
task.setRenderOption(options);
task.run();
task.close();
} catch (Exception e) {
e.printStackTrace();
task.close();
throw e;
}
}
The Report:
<?xml version="1.0" encoding="UTF-8"?>
<report xmlns="http://www.eclipse.org/birt/2005/design" version="3.2.6"
id="1">
<property name="createdBy">Eclipse BIRT Designer Version
2.2.1.r22a_v20071101 Build <2.2.1.v20071101-1439></property>
<property name="units">in</property>
<property name="comments">Copyright (c) 2007 <<Your Company Name
here>></property>
<html-property name="description">Creates a blank report with no
predefined content.</html-property>
<text-property name="displayName">Blank Report</text-property>
<property name="iconFile">/templates/blank_report.gif</property>
<data-sources>
<script-data-source name="Data Source" id="431"/>
</data-sources>
<data-sets>
<script-data-set name="Data Set" id="432">
<list-property name="resultSetHints">
<structure>
<property name="position">1</property>
<property name="name">FILE_CONTENT</property>
<property name="dataType">any</property>
</structure>
</list-property>
<list-property name="columnHints">
<structure>
<property name="columnName">FILE_CONTENT</property>
</structure>
</list-property>
<structure name="cachedMetaData">
<list-property name="resultSet">
<structure>
<property name="position">1</property>
<property name="name">FILE_CONTENT</property>
<property name="dataType">any</property>
</structure>
</list-property>
</structure>
<property name="dataSource">Data Source</property>
<method name="open"><![CDATA[appContext =
reportContext.getAppContext();
var productList = appContext.get("printData");
iter = productList.iterator();]]></method>
<method name="fetch"><![CDATA[if(!iter.hasNext()) {
return false;
}
node = iter.next();
row["FILE_CONTENT"] = node.getFileContent();
return true;]]></method>
</script-data-set>
</data-sets>
<styles>
<style name="crosstab-cell" id="4">
<property name="borderBottomColor">#CCCCCC</property>
<property name="borderBottomStyle">solid</property>
<property name="borderBottomWidth">1pt</property>
<property name="borderLeftColor">#CCCCCC</property>
<property name="borderLeftStyle">solid</property>
<property name="borderLeftWidth">1pt</property>
<property name="borderRightColor">#CCCCCC</property>
<property name="borderRightStyle">solid</property>
<property name="borderRightWidth">1pt</property>
<property name="borderTopColor">#CCCCCC</property>
<property name="borderTopStyle">solid</property>
<property name="borderTopWidth">1pt</property>
</style>
<style name="crosstab" id="5">
<property name="borderBottomColor">#CCCCCC</property>
<property name="borderBottomStyle">solid</property>
<property name="borderBottomWidth">1pt</property>
<property name="borderLeftColor">#CCCCCC</property>
<property name="borderLeftStyle">solid</property>
<property name="borderLeftWidth">1pt</property>
<property name="borderRightColor">#CCCCCC</property>
<property name="borderRightStyle">solid</property>
<property name="borderRightWidth">1pt</property>
<property name="borderTopColor">#CCCCCC</property>
<property name="borderTopStyle">solid</property>
<property name="borderTopWidth">1pt</property>
</style>
</styles>
<page-setup>
<simple-master-page name="Simple MasterPage" id="2">
<page-footer>
<text id="3">
<property name="contentType">html</property>
<text-property name="content"><![CDATA[<value-of>new
Date()</value-of>]]></text-property>
</text>
</page-footer>
</simple-master-page>
</page-setup>
<body>
<table id="443">
<property name="width">100%</property>
<property name="dataSet">Data Set</property>
<list-property name="boundDataColumns">
<structure>
<property name="name">FILE_CONTENT</property>
<expression
name="expression">dataSetRow["FILE_CONTENT"]</expression >
<property name="dataType">any</property>
</structure>
</list-property>
<column id="452"/>
<header>
<row id="444">
<cell id="445">
<label id="446">
<text-property
name="text">FILE_CONTENT</text-property>
</label>
</cell>
</row>
</header>
<detail>
<row id="447">
<cell id="448">
<image id="453">
<property name="source">expr</property>
<expression
name="valueExpr">row["FILE_CONTENT"]</expression>
</image>
</cell>
</row>
</detail>
<footer>
<row id="450">
<cell id="451"/>
</row>
</footer>
</table>
</body>
</report>
The error:
WARNING: An error happen during population of data. This might be caused
by including data of mixed type in a column of "ANY" type.
java.lang.IllegalArgumentException: An error happen during population of
data. This might be caused by including data of mixed type in a column of
"ANY" type.
at
org.eclipse.birt.data.engine.script.DataRow.setColumnValue(D ataRow.java:153)
at
org.eclipse.birt.data.engine.script.JSRowObject.put(JSRowObj ect.java:297)
at
org.mozilla.javascript.ScriptableObject.putProperty(Scriptab leObject.java:1656)
at
org.mozilla.javascript.ScriptRuntime.setObjectElem(ScriptRun time.java:1451)
at
org.mozilla.javascript.ScriptRuntime.setObjectElem(ScriptRun time.java:1434)
at org.mozilla.javascript.gen.c7._c1(DataSet[Data Set].__bm_FETCH:29)
at org.mozilla.javascript.gen.c7.call(DataSet[Data Set].__bm_FETCH)
at
org.mozilla.javascript.optimizer.OptRuntime.callName0(OptRun time.java:108)
at org.mozilla.javascript.gen.c8._c0(DataSet[Data Set].__bm_FETCH:1)
at org.mozilla.javascript.gen.c8.call(DataSet[Data Set].__bm_FETCH)
at
org.mozilla.javascript.ContextFactory.doTopCall(ContextFacto ry.java:393)
at org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime .java:2834)
at org.mozilla.javascript.gen.c8.call(DataSet[Data Set].__bm_FETCH)
at org.mozilla.javascript.gen.c8.exec(DataSet[Data Set].__bm_FETCH)
at
org.eclipse.birt.core.script.JavascriptEvalUtil.evaluateRawS cript(JavascriptEvalUtil.java:95)
at
org.eclipse.birt.core.script.JavascriptEvalUtil.evaluateScri pt(JavascriptEvalUtil.java:134)
at
org.eclipse.birt.data.engine.script.ScriptEvalUtil.evaluateJ SAsExpr(ScriptEvalUtil.java:676)
at
org.eclipse.birt.data.engine.script.JSMethodRunner.runScript (JSMethodRunner.java:79)
at
org.eclipse.birt.report.engine.script.internal.DtEScriptExec utor.handleJS(DtEScriptExecutor.java:71)
at
org.eclipse.birt.report.engine.script.internal.DataSetScript Executor.handleJS(DataSetScriptExecutor.java:159)
at
org.eclipse.birt.report.engine.script.internal.ScriptDataSet ScriptExecutor.handleFetch(ScriptDataSetScriptExecutor.java: 100)
at
org.eclipse.birt.data.engine.impl.ScriptDataSetRuntime.fetch (ScriptDataSetRuntime.java:102)
at
org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$Scri ptDSQueryExecutor$CustomDataSet.fetch(PreparedScriptDSQuery. java:257)
at
org.eclipse.birt.data.engine.executor.cache.OdiAdapter.fetch (OdiAdapter.java:150)
at
org.eclipse.birt.data.engine.executor.cache.RowResultSet.nex t(RowResultSet.java:91)
at
org.eclipse.birt.data.engine.executor.cache.ExpandableRowRes ultSet.next(ExpandableRowResultSet.java:62)
at
org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper .populateData(SmartCacheHelper.java:288)
at
org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper .initInstance(SmartCacheHelper.java:261)
at
org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper .getResultSetCache(SmartCacheHelper.java:224)
at
org.eclipse.birt.data.engine.executor.cache.SmartCache.<init >(SmartCache.java:68)
at
org.eclipse.birt.data.engine.executor.transform.pass.PassUti l.populateOdiResultSet(PassUtil.java:108)
at
org.eclipse.birt.data.engine.executor.transform.pass.PassUti l.pass(PassUtil.java:61)
at
org.eclipse.birt.data.engine.executor.transform.pass.PassMan ager.doSinglePass(PassManager.java:185)
at
org.eclipse.birt.data.engine.executor.transform.pass.PassMan ager.pass(PassManager.java:90)
at
org.eclipse.birt.data.engine.executor.transform.pass.PassMan ager.populateResultSet(PassManager.java:72)
at
org.eclipse.birt.data.engine.executor.transform.ResultSetPop ulator.populateResultSet(ResultSetPopulator.java:208)
at
org.eclipse.birt.data.engine.executor.transform.CachedResult Set. <init>(CachedResultSet.java:132)
at
org.eclipse.birt.data.engine.executor.CandidateQuery.execute (CandidateQuery.java:106)
at
org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$Scri ptDSQueryExecutor.executeOdiQuery(PreparedScriptDSQuery.java :223)
at
org.eclipse.birt.data.engine.impl.QueryExecutor.execute(Quer yExecutor.java:767)
at
org.eclipse.birt.data.engine.impl.ServiceForQueryResults.exe cuteQuery(ServiceForQueryResults.java:217)
at
org.eclipse.birt.data.engine.impl.QueryResults.getResultIter ator(QueryResults.java:157)
at
org.eclipse.birt.report.engine.data.dte.QueryResultSet.<init >(QueryResultSet.java:83)
at
org.eclipse.birt.report.engine.data.dte.DteDataEngine.doExec uteQuery(DteDataEngine.java:157)
at
org.eclipse.birt.report.engine.data.dte.DteDataEngine.doExec uteQuery(DteDataEngine.java:117)
at
org.eclipse.birt.report.engine.data.dte.AbstractDataEngine.e xecute(AbstractDataEngine.java:182)
at
org.eclipse.birt.report.engine.executor.ExecutionContext.exe cuteQuery(ExecutionContext.java:1685)
at
org.eclipse.birt.report.engine.executor.QueryItemExecutor.ex ecuteQuery(QueryItemExecutor.java:76)
at
org.eclipse.birt.report.engine.executor.TableItemExecutor.ex ecute(TableItemExecutor.java:61)
at
org.eclipse.birt.report.engine.internal.executor.dup.Suppres sDuplicateItemExecutor.execute(SuppressDuplicateItemExecutor .java:42)
at
org.eclipse.birt.report.engine.internal.executor.wrap.Wrappe dReportItemExecutor.execute(WrappedReportItemExecutor.java:4 5)
at
org.eclipse.birt.report.engine.internal.executor.l18n.Locali zedReportItemExecutor.execute(LocalizedReportItemExecutor.ja va:33)
at
org.eclipse.birt.report.engine.layout.content.BlockStackingE xecutor.getNextChild(BlockStackingExecutor.java:48)
at
org.eclipse.birt.report.engine.layout.pdf.PDFBlockStackingLM .traverseChildren(PDFBlockStackingLM.java:83)
at
org.eclipse.birt.report.engine.layout.pdf.PDFStackingLM.layo utChildren(PDFStackingLM.java:141)
at
org.eclipse.birt.report.engine.layout.pdf.PDFPageLM.layout(P DFPageLM.java:212)
at
org.eclipse.birt.report.engine.layout.pdf.PDFReportLayoutEng ine.layoutReport(PDFReportLayoutEngine.java:64)
at
org.eclipse.birt.report.engine.layout.pdf.PDFReportLayoutEng ine.layout(PDFReportLayoutEngine.java:87)
at
org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.doR un(RunAndRenderTask.java:140)
at
org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run (RunAndRenderTask.java:68)
at com.sbn.common.web.GenReportCtrl.executeReport(GenReportCtrl .java:130)
at com.sbn.common.web.GenReportCtrl.sbnRequest(GenReportCtrl.ja va:55)
at com.sbn.base.web.SbnBaseCtrl.handleRequest(SbnBaseCtrl.java: 52)
at
org.springframework.web.servlet.mvc.SimpleControllerHandlerA dapter.handle(SimpleControllerHandlerAdapter.java:45)
at
org.springframework.web.servlet.DispatcherServlet.doDispatch (DispatcherServlet.java:820)
at
org.springframework.web.servlet.DispatcherServlet.doService( DispatcherServlet.java:755)
at
org.springframework.web.servlet.FrameworkServlet.processRequ est(FrameworkServlet.java:396)
at
org.springframework.web.servlet.FrameworkServlet.doGet(Frame workServlet.java:350)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFi lter(ApplicationFilterChain.java:252)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(App licationFilterChain.java:173)
at
org.acegisecurity.securechannel.ChannelProcessingFilter.doFi lter(ChannelProcessingFilter.java:138)
at
org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBe anProxy.java:98)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFi lter(ApplicationFilterChain.java:202)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(App licationFilterChain.java:173)
at
org.springframework.web.filter.CharacterEncodingFilter.doFil terInternal(CharacterEncodingFilter.java:78)
at
org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:77)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFi lter(ApplicationFilterChain.java:202)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(App licationFilterChain.java:173)
at
org.apache.catalina.core.StandardWrapperValve.invoke(Standar dWrapperValve.java:213)
at
org.apache.catalina.core.StandardContextValve.invoke(Standar dContextValve.java:178)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHo stValve.java:126)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorRepo rtValve.java:105)
at
org.apache.catalina.core.StandardEngineValve.invoke(Standard EngineValve.java:107)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAd apter.java:148)
at
org.apache.coyote.http11.Http11Processor.process(Http11Proce ssor.java:869)
at
org.apache.coyote.http11.Http11BaseProtocol$Http11Connection Handler.processConnection(Http11BaseProtocol.java:664)
at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(Poo lTcpEndpoint.java:527)
at
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt( LeaderFollowerWorkerThread.java:80)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.ru n(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:619)
Dec 31, 2007 1:42:25 PM
org.eclipse.birt.report.engine.script.internal.ScriptExecuto r addException
WARNING: data.engine.BadFetchScriptReturnType
org.eclipse.birt.data.engine.core.DataException:
data.engine.BadFetchScriptReturnType
at
org.eclipse.birt.report.engine.script.internal.ScriptDataSet ScriptExecutor.handleFetch(ScriptDataSetScriptExecutor.java: 109)
at
org.eclipse.birt.data.engine.impl.ScriptDataSetRuntime.fetch (ScriptDataSetRuntime.java:102)
at
org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$Scri ptDSQueryExecutor$CustomDataSet.fetch(PreparedScriptDSQuery. java:257)
at
org.eclipse.birt.data.engine.executor.cache.OdiAdapter.fetch (OdiAdapter.java:150)
at
org.eclipse.birt.data.engine.executor.cache.RowResultSet.nex t(RowResultSet.java:91)
at
org.eclipse.birt.data.engine.executor.cache.ExpandableRowRes ultSet.next(ExpandableRowResultSet.java:62)
at
org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper .populateData(SmartCacheHelper.java:288)
at
org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper .initInstance(SmartCacheHelper.java:261)
at
org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper .getResultSetCache(SmartCacheHelper.java:224)
at
org.eclipse.birt.data.engine.executor.cache.SmartCache.<init >(SmartCache.java:68)
at
org.eclipse.birt.data.engine.executor.transform.pass.PassUti l.populateOdiResultSet(PassUtil.java:108)
at
org.eclipse.birt.data.engine.executor.transform.pass.PassUti l.pass(PassUtil.java:61)
at
org.eclipse.birt.data.engine.executor.transform.pass.PassMan ager.doSinglePass(PassManager.java:185)
at
org.eclipse.birt.data.engine.executor.transform.pass.PassMan ager.pass(PassManager.java:90)
at
org.eclipse.birt.data.engine.executor.transform.pass.PassMan ager.populateResultSet(PassManager.java:72)
at
org.eclipse.birt.data.engine.executor.transform.ResultSetPop ulator.populateResultSet(ResultSetPopulator.java:208)
at
org.eclipse.birt.data.engine.executor.transform.CachedResult Set. <init>(CachedResultSet.java:132)
at
org.eclipse.birt.data.engine.executor.CandidateQuery.execute (CandidateQuery.java:106)
at
org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$Scri ptDSQueryExecutor.executeOdiQuery(PreparedScriptDSQuery.java :223)
at
org.eclipse.birt.data.engine.impl.QueryExecutor.execute(Quer yExecutor.java:767)
at
org.eclipse.birt.data.engine.impl.ServiceForQueryResults.exe cuteQuery(ServiceForQueryResults.java:217)
at
org.eclipse.birt.data.engine.impl.QueryResults.getResultIter ator(QueryResults.java:157)
at
org.eclipse.birt.report.engine.data.dte.QueryResultSet.<init >(QueryResultSet.java:83)
at
org.eclipse.birt.report.engine.data.dte.DteDataEngine.doExec uteQuery(DteDataEngine.java:157)
at
org.eclipse.birt.report.engine.data.dte.DteDataEngine.doExec uteQuery(DteDataEngine.java:117)
at
org.eclipse.birt.report.engine.data.dte.AbstractDataEngine.e xecute(AbstractDataEngine.java:182)
at
org.eclipse.birt.report.engine.executor.ExecutionContext.exe cuteQuery(ExecutionContext.java:1685)
at
org.eclipse.birt.report.engine.executor.QueryItemExecutor.ex ecuteQuery(QueryItemExecutor.java:76)
at
org.eclipse.birt.report.engine.executor.TableItemExecutor.ex ecute(TableItemExecutor.java:61)
at
org.eclipse.birt.report.engine.internal.executor.dup.Suppres sDuplicateItemExecutor.execute(SuppressDuplicateItemExecutor .java:42)
at
org.eclipse.birt.report.engine.internal.executor.wrap.Wrappe dReportItemExecutor.execute(WrappedReportItemExecutor.java:4 5)
at
org.eclipse.birt.report.engine.internal.executor.l18n.Locali zedReportItemExecutor.execute(LocalizedReportItemExecutor.ja va:33)
at
org.eclipse.birt.report.engine.layout.content.BlockStackingE xecutor.getNextChild(BlockStackingExecutor.java:48)
at
org.eclipse.birt.report.engine.layout.pdf.PDFBlockStackingLM .traverseChildren(PDFBlockStackingLM.java:83)
at
org.eclipse.birt.report.engine.layout.pdf.PDFStackingLM.layo utChildren(PDFStackingLM.java:141)
at
org.eclipse.birt.report.engine.layout.pdf.PDFPageLM.layout(P DFPageLM.java:212)
at
org.eclipse.birt.report.engine.layout.pdf.PDFReportLayoutEng ine.layoutReport(PDFReportLayoutEngine.java:64)
at
org.eclipse.birt.report.engine.layout.pdf.PDFReportLayoutEng ine.layout(PDFReportLayoutEngine.java:87)
at
org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.doR un(RunAndRenderTask.java:140)
at
org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run (RunAndRenderTask.java:68)
at com.sbn.common.web.GenReportCtrl.executeReport(GenReportCtrl .java:130)
at com.sbn.common.web.GenReportCtrl.sbnRequest(GenReportCtrl.ja va:55)
at com.sbn.base.web.SbnBaseCtrl.handleRequest(SbnBaseCtrl.java: 52)
at
org.springframework.web.servlet.mvc.SimpleControllerHandlerA dapter.handle(SimpleControllerHandlerAdapter.java:45)
at
org.springframework.web.servlet.DispatcherServlet.doDispatch (DispatcherServlet.java:820)
at
org.springframework.web.servlet.DispatcherServlet.doService( DispatcherServlet.java:755)
at
org.springframework.web.servlet.FrameworkServlet.processRequ est(FrameworkServlet.java:396)
at
org.springframework.web.servlet.FrameworkServlet.doGet(Frame workServlet.java:350)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFi lter(ApplicationFilterChain.java:252)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(App licationFilterChain.java:173)
at
org.acegisecurity.securechannel.ChannelProcessingFilter.doFi lter(ChannelProcessingFilter.java:138)
at
org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBe anProxy.java:98)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFi lter(ApplicationFilterChain.java:202)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(App licationFilterChain.java:173)
at
org.springframework.web.filter.CharacterEncodingFilter.doFil terInternal(CharacterEncodingFilter.java:78)
at
org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:77)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFi lter(ApplicationFilterChain.java:202)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(App licationFilterChain.java:173)
at
org.apache.catalina.core.StandardWrapperValve.invoke(Standar dWrapperValve.java:213)
at
org.apache.catalina.core.StandardContextValve.invoke(Standar dContextValve.java:178)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHo stValve.java:126)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorRepo rtValve.java:105)
at
org.apache.catalina.core.StandardEngineValve.invoke(Standard EngineValve.java:107)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAd apter.java:148)
at
org.apache.coyote.http11.Http11Processor.process(Http11Proce ssor.java:869)
at
org.apache.coyote.http11.Http11BaseProtocol$Http11Connection Handler.processConnection(Http11BaseProtocol.java:664)
at
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(Poo lTcpEndpoint.java:527)
at
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt( LeaderFollowerWorkerThread.java:80)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.ru n(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:619)
Dec 31, 2007 1:42:25 PM org.eclipse.birt.data.engine.impl.DataEngineImpl
shutdown
INFO: Data engine shuts down
|
|
|
Re: Scripted Datsource Problem with Images [message #263837 is a reply to message #263810] |
Tue, 01 January 2008 15:12   |
Eclipse User |
|
|
|
There is a bug in BIRT 2.2 when using the ANY datatype.
It is fixed in BIRT 2.3 (I haven't tried it).
In BIRT 2.2.1.1, you can replace the org.eclipse.birt.data plugin with
this plugin
http://www.snpe.co.yu/org.eclipse.birt.data_2.2.1.r22x_v2008 0101.jar in
order to solve the issue.
Snjeza
barrin wrote:
> Hi,
>
> I came up with a very simple report to illustrate this problem. Its a
> report with a scripted datasource which simply displays a list of
> images. (Stored as Blobs in the database). I am using birt incorporaed
> into a web app by the way.
>
> I pass in a list of images (as a list of byte arrays) as 'printData'. I
> tried both the latest stable build of the report engine and tried a more
> advanced build (birt-runtime-S20071217.zip) the error remains.
>
> I hope someone can advice me on this problem. Many thanks in advance.
>
>
>
> The Report Generating code:
>
> protected void executeReport(HttpServletRequest req,
> HttpServletResponse resp, String templateFileName) throws
> Exception {
>
> HashMap parameters =
> (HashMap)BaseCtrlUtils.getSessionObject(req, "parameters");
>
> BaseCtrlUtils.removeSessionObject(req, "parameters");
>
>
> //via hashmap
> List printData = (ArrayList)
> BaseCtrlUtils.getSessionObject(req, "printData");
> BaseCtrlUtils.removeSessionObject(req, "printData");
>
> IReportEngine birtReportEngine = null;
> Logger logger = Logger.getLogger("org.eclipse.birt");
>
> resp.setContentType( "application/pdf" ); resp.setHeader
> ("Content-Disposition","inline; filename=test.pdf");
> ServletContext sc = req.getSession().getServletContext();
> birtReportEngine = birtEngine.getBirtEngine(sc);
>
> //setup image directory
> HTMLRenderOption renderOption = new HTMLRenderOption();
> renderOption.setBaseImageURL(req.getContextPath() + "/images");
> renderOption.setImageDirectory(sc.getRealPath("/images"));
>
> logger.log(Level.FINE, "image directory " +
> sc.getRealPath("/images"));
>
>
> IReportRunnable design = null;
> IRunAndRenderTask task = null;
>
> try {
> String path = sc.getRealPath("/");
> design = birtReportEngine.openReportDesign(path +
> "WEB-INF/Reports/" + templateFileName);
>
> //create task to run and render report
>
> task = birtReportEngine
> .createRunAndRenderTask(design);
>
> if(parameters!=null) {
> task.setParameterValues(parameters);
> }
>
> HashMap appContext = new HashMap();
> appContext.put("printData", printData);
> task.setAppContext(appContext);
> task.setRenderOption(renderOption);
>
> //set output options
> HTMLRenderOption options = new HTMLRenderOption();
> options.setOutputFormat(HTMLRenderOption.OUTPUT_FORMAT_PDF);
> options.setOutputStream(resp.getOutputStream());
> task.setRenderOption(options);
> task.run();
> task.close();
> } catch (Exception e) {
> e.printStackTrace();
> task.close();
> throw e;
> }
> }
>
>
>
>
>
> The Report:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <report xmlns="http://www.eclipse.org/birt/2005/design" version="3.2.6"
> id="1">
> <property name="createdBy">Eclipse BIRT Designer Version
> 2.2.1.r22a_v20071101 Build <2.2.1.v20071101-1439></property>
> <property name="units">in</property>
> <property name="comments">Copyright (c) 2007 <<Your Company
> Name here>></property>
> <html-property name="description">Creates a blank report with no
> predefined content.</html-property>
> <text-property name="displayName">Blank Report</text-property>
> <property name="iconFile">/templates/blank_report.gif</property>
> <data-sources>
> <script-data-source name="Data Source" id="431"/>
> </data-sources>
> <data-sets>
> <script-data-set name="Data Set" id="432">
> <list-property name="resultSetHints">
> <structure>
> <property name="position">1</property>
> <property name="name">FILE_CONTENT</property>
> <property name="dataType">any</property>
> </structure>
> </list-property>
> <list-property name="columnHints">
> <structure>
> <property name="columnName">FILE_CONTENT</property>
> </structure>
> </list-property>
> <structure name="cachedMetaData">
> <list-property name="resultSet">
> <structure>
> <property name="position">1</property>
> <property name="name">FILE_CONTENT</property>
> <property name="dataType">any</property>
> </structure>
> </list-property>
> </structure>
> <property name="dataSource">Data Source</property>
> <method name="open"><![CDATA[appContext =
> reportContext.getAppContext();
> var productList = appContext.get("printData");
>
> iter = productList.iterator();]]></method>
> <method name="fetch"><![CDATA[if(!iter.hasNext()) {
> return false;
> }
> node = iter.next();
>
>
> row["FILE_CONTENT"] = node.getFileContent();
>
> return true;]]></method>
> </script-data-set>
> </data-sets>
> <styles>
> <style name="crosstab-cell" id="4">
> <property name="borderBottomColor">#CCCCCC</property>
> <property name="borderBottomStyle">solid</property>
> <property name="borderBottomWidth">1pt</property>
> <property name="borderLeftColor">#CCCCCC</property>
> <property name="borderLeftStyle">solid</property>
> <property name="borderLeftWidth">1pt</property>
> <property name="borderRightColor">#CCCCCC</property>
> <property name="borderRightStyle">solid</property>
> <property name="borderRightWidth">1pt</property>
> <property name="borderTopColor">#CCCCCC</property>
> <property name="borderTopStyle">solid</property>
> <property name="borderTopWidth">1pt</property>
> </style>
> <style name="crosstab" id="5">
> <property name="borderBottomColor">#CCCCCC</property>
> <property name="borderBottomStyle">solid</property>
> <property name="borderBottomWidth">1pt</property>
> <property name="borderLeftColor">#CCCCCC</property>
> <property name="borderLeftStyle">solid</property>
> <property name="borderLeftWidth">1pt</property>
> <property name="borderRightColor">#CCCCCC</property>
> <property name="borderRightStyle">solid</property>
> <property name="borderRightWidth">1pt</property>
> <property name="borderTopColor">#CCCCCC</property>
> <property name="borderTopStyle">solid</property>
> <property name="borderTopWidth">1pt</property>
> </style>
> </styles>
> <page-setup>
> <simple-master-page name="Simple MasterPage" id="2">
> <page-footer>
> <text id="3">
> <property name="contentType">html</property>
> <text-property name="content"><![CDATA[<value-of>new
> Date()</value-of>]]></text-property>
> </text>
> </page-footer>
> </simple-master-page>
> </page-setup>
> <body>
> <table id="443">
> <property name="width">100%</property>
> <property name="dataSet">Data Set</property>
> <list-property name="boundDataColumns">
> <structure>
> <property name="name">FILE_CONTENT</property>
> <expression
> name="expression">dataSetRow["FILE_CONTENT"]</expression >
> <property name="dataType">any</property>
> </structure>
> </list-property>
> <column id="452"/>
> <header>
> <row id="444">
> <cell id="445">
> <label id="446">
> <text-property
> name="text">FILE_CONTENT</text-property>
> </label>
> </cell>
> </row>
> </header>
> <detail>
> <row id="447">
> <cell id="448">
> <image id="453">
> <property name="source">expr</property>
> <expression
> name="valueExpr">row["FILE_CONTENT"]</expression>
> </image>
> </cell>
> </row>
> </detail>
> <footer>
> <row id="450">
> <cell id="451"/>
> </row>
> </footer>
> </table>
> </body>
> </report>
>
> The error:
>
> WARNING: An error happen during population of data. This might be caused
> by including data of mixed type in a column of "ANY" type.
> java.lang.IllegalArgumentException: An error happen during population of
> data. This might be caused by including data of mixed type in a column
> of "ANY" type.
> at
> org.eclipse.birt.data.engine.script.DataRow.setColumnValue(D ataRow.java:153)
>
> at
> org.eclipse.birt.data.engine.script.JSRowObject.put(JSRowObj ect.java:297)
> at
> org.mozilla.javascript.ScriptableObject.putProperty(Scriptab leObject.java:1656)
>
> at
> org.mozilla.javascript.ScriptRuntime.setObjectElem(ScriptRun time.java:1451)
> at
> org.mozilla.javascript.ScriptRuntime.setObjectElem(ScriptRun time.java:1434)
> at org.mozilla.javascript.gen.c7._c1(DataSet[Data Set].__bm_FETCH:29)
> at org.mozilla.javascript.gen.c7.call(DataSet[Data Set].__bm_FETCH)
> at
> org.mozilla.javascript.optimizer.OptRuntime.callName0(OptRun time.java:108)
> at org.mozilla.javascript.gen.c8._c0(DataSet[Data Set].__bm_FETCH:1)
> at org.mozilla.javascript.gen.c8.call(DataSet[Data Set].__bm_FETCH)
> at
> org.mozilla.javascript.ContextFactory.doTopCall(ContextFacto ry.java:393)
> at
> org.mozilla.javascript.ScriptRuntime.doTopCall(ScriptRuntime .java:2834)
> at org.mozilla.javascript.gen.c8.call(DataSet[Data Set].__bm_FETCH)
> at org.mozilla.javascript.gen.c8.exec(DataSet[Data Set].__bm_FETCH)
> at
> org.eclipse.birt.core.script.JavascriptEvalUtil.evaluateRawS cript(JavascriptEvalUtil.java:95)
>
> at
> org.eclipse.birt.core.script.JavascriptEvalUtil.evaluateScri pt(JavascriptEvalUtil.java:134)
>
> at
> org.eclipse.birt.data.engine.script.ScriptEvalUtil.evaluateJ SAsExpr(ScriptEvalUtil.java:676)
>
> at
> org.eclipse.birt.data.engine.script.JSMethodRunner.runScript (JSMethodRunner.java:79)
>
> at
> org.eclipse.birt.report.engine.script.internal.DtEScriptExec utor.handleJS(DtEScriptExecutor.java:71)
>
> at
> org.eclipse.birt.report.engine.script.internal.DataSetScript Executor.handleJS(DataSetScriptExecutor.java:159)
>
> at
> org.eclipse.birt.report.engine.script.internal.ScriptDataSet ScriptExecutor.handleFetch(ScriptDataSetScriptExecutor.java: 100)
>
> at
> org.eclipse.birt.data.engine.impl.ScriptDataSetRuntime.fetch (ScriptDataSetRuntime.java:102)
>
> at
> org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$Scri ptDSQueryExecutor$CustomDataSet.fetch(PreparedScriptDSQuery. java:257)
>
> at
> org.eclipse.birt.data.engine.executor.cache.OdiAdapter.fetch (OdiAdapter.java:150)
>
> at
> org.eclipse.birt.data.engine.executor.cache.RowResultSet.nex t(RowResultSet.java:91)
>
> at
> org.eclipse.birt.data.engine.executor.cache.ExpandableRowRes ultSet.next(ExpandableRowResultSet.java:62)
>
> at
> org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper .populateData(SmartCacheHelper.java:288)
>
> at
> org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper .initInstance(SmartCacheHelper.java:261)
>
> at
> org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper .getResultSetCache(SmartCacheHelper.java:224)
>
> at
> org.eclipse.birt.data.engine.executor.cache.SmartCache.<init >(SmartCache.java:68)
>
> at
> org.eclipse.birt.data.engine.executor.transform.pass.PassUti l.populateOdiResultSet(PassUtil.java:108)
>
> at
> org.eclipse.birt.data.engine.executor.transform.pass.PassUti l.pass(PassUtil.java:61)
>
> at
> org.eclipse.birt.data.engine.executor.transform.pass.PassMan ager.doSinglePass(PassManager.java:185)
>
> at
> org.eclipse.birt.data.engine.executor.transform.pass.PassMan ager.pass(PassManager.java:90)
>
> at
> org.eclipse.birt.data.engine.executor.transform.pass.PassMan ager.populateResultSet(PassManager.java:72)
>
> at
> org.eclipse.birt.data.engine.executor.transform.ResultSetPop ulator.populateResultSet(ResultSetPopulator.java:208)
>
> at
> org.eclipse.birt.data.engine.executor.transform.CachedResult Set. <init>(CachedResultSet.java:132)
>
> at
> org.eclipse.birt.data.engine.executor.CandidateQuery.execute (CandidateQuery.java:106)
>
> at
> org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$Scri ptDSQueryExecutor.executeOdiQuery(PreparedScriptDSQuery.java :223)
>
> at
> org.eclipse.birt.data.engine.impl.QueryExecutor.execute(Quer yExecutor.java:767)
>
> at
> org.eclipse.birt.data.engine.impl.ServiceForQueryResults.exe cuteQuery(ServiceForQueryResults.java:217)
>
> at
> org.eclipse.birt.data.engine.impl.QueryResults.getResultIter ator(QueryResults.java:157)
>
> at
> org.eclipse.birt.report.engine.data.dte.QueryResultSet.<init >(QueryResultSet.java:83)
>
> at
> org.eclipse.birt.report.engine.data.dte.DteDataEngine.doExec uteQuery(DteDataEngine.java:157)
>
> at
> org.eclipse.birt.report.engine.data.dte.DteDataEngine.doExec uteQuery(DteDataEngine.java:117)
>
> at
> org.eclipse.birt.report.engine.data.dte.AbstractDataEngine.e xecute(AbstractDataEngine.java:182)
>
> at
> org.eclipse.birt.report.engine.executor.ExecutionContext.exe cuteQuery(ExecutionContext.java:1685)
>
> at
> org.eclipse.birt.report.engine.executor.QueryItemExecutor.ex ecuteQuery(QueryItemExecutor.java:76)
>
> at
> org.eclipse.birt.report.engine.executor.TableItemExecutor.ex ecute(TableItemExecutor.java:61)
>
> at
> org.eclipse.birt.report.engine.internal.executor.dup.Suppres sDuplicateItemExecutor.execute(SuppressDuplicateItemExecutor .java:42)
>
> at
> org.eclipse.birt.report.engine.internal.executor.wrap.Wrappe dReportItemExecutor.execute(WrappedReportItemExecutor.java:4 5)
>
> at
> org.eclipse.birt.report.engine.internal.executor.l18n.Locali zedReportItemExecutor.execute(LocalizedReportItemExecutor.ja va:33)
>
> at
> org.eclipse.birt.report.engine.layout.content.BlockStackingE xecutor.getNextChild(BlockStackingExecutor.java:48)
>
> at
> org.eclipse.birt.report.engine.layout.pdf.PDFBlockStackingLM .traverseChildren(PDFBlockStackingLM.java:83)
>
> at
> org.eclipse.birt.report.engine.layout.pdf.PDFStackingLM.layo utChildren(PDFStackingLM.java:141)
>
> at
> org.eclipse.birt.report.engine.layout.pdf.PDFPageLM.layout(P DFPageLM.java:212)
>
> at
> org.eclipse.birt.report.engine.layout.pdf.PDFReportLayoutEng ine.layoutReport(PDFReportLayoutEngine.java:64)
>
> at
> org.eclipse.birt.report.engine.layout.pdf.PDFReportLayoutEng ine.layout(PDFReportLayoutEngine.java:87)
>
> at
> org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.doR un(RunAndRenderTask.java:140)
>
> at
> org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run (RunAndRenderTask.java:68)
>
> at
> com.sbn.common.web.GenReportCtrl.executeReport(GenReportCtrl .java:130)
> at com.sbn.common.web.GenReportCtrl.sbnRequest(GenReportCtrl.ja va:55)
> at com.sbn.base.web.SbnBaseCtrl.handleRequest(SbnBaseCtrl.java: 52)
> at
> org.springframework.web.servlet.mvc.SimpleControllerHandlerA dapter.handle(SimpleControllerHandlerAdapter.java:45)
>
> at
> org.springframework.web.servlet.DispatcherServlet.doDispatch (DispatcherServlet.java:820)
>
> at
> org.springframework.web.servlet.DispatcherServlet.doService( DispatcherServlet.java:755)
>
> at
> org.springframework.web.servlet.FrameworkServlet.processRequ est(FrameworkServlet.java:396)
>
> at
> org.springframework.web.servlet.FrameworkServlet.doGet(Frame workServlet.java:350)
>
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFi lter(ApplicationFilterChain.java:252)
>
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(App licationFilterChain.java:173)
>
> at
> org.acegisecurity.securechannel.ChannelProcessingFilter.doFi lter(ChannelProcessingFilter.java:138)
>
> at
> org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBe anProxy.java:98)
>
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFi lter(ApplicationFilterChain.java:202)
>
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(App licationFilterChain.java:173)
>
> at
> org.springframework.web.filter.CharacterEncodingFilter.doFil terInternal(CharacterEncodingFilter.java:78)
>
> at
> org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:77)
>
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFi lter(ApplicationFilterChain.java:202)
>
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(App licationFilterChain.java:173)
>
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(Standar dWrapperValve.java:213)
>
> at
> org.apache.catalina.core.StandardContextValve.invoke(Standar dContextValve.java:178)
>
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHo stValve.java:126)
>
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorRepo rtValve.java:105)
>
> at
> org.apache.catalina.core.StandardEngineValve.invoke(Standard EngineValve.java:107)
>
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAd apter.java:148)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Proce ssor.java:869)
> at
> org.apache.coyote.http11.Http11BaseProtocol$Http11Connection Handler.processConnection(Http11BaseProtocol.java:664)
>
> at
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(Poo lTcpEndpoint.java:527)
>
> at
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt( LeaderFollowerWorkerThread.java:80)
>
> at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.ru n(ThreadPool.java:684)
>
> at java.lang.Thread.run(Thread.java:619)
> Dec 31, 2007 1:42:25 PM
> org.eclipse.birt.report.engine.script.internal.ScriptExecuto r addException
> WARNING: data.engine.BadFetchScriptReturnType
> org.eclipse.birt.data.engine.core.DataException:
> data.engine.BadFetchScriptReturnType
> at
> org.eclipse.birt.report.engine.script.internal.ScriptDataSet ScriptExecutor.handleFetch(ScriptDataSetScriptExecutor.java: 109)
>
> at
> org.eclipse.birt.data.engine.impl.ScriptDataSetRuntime.fetch (ScriptDataSetRuntime.java:102)
>
> at
> org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$Scri ptDSQueryExecutor$CustomDataSet.fetch(PreparedScriptDSQuery. java:257)
>
> at
> org.eclipse.birt.data.engine.executor.cache.OdiAdapter.fetch (OdiAdapter.java:150)
>
> at
> org.eclipse.birt.data.engine.executor.cache.RowResultSet.nex t(RowResultSet.java:91)
>
> at
> org.eclipse.birt.data.engine.executor.cache.ExpandableRowRes ultSet.next(ExpandableRowResultSet.java:62)
>
> at
> org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper .populateData(SmartCacheHelper.java:288)
>
> at
> org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper .initInstance(SmartCacheHelper.java:261)
>
> at
> org.eclipse.birt.data.engine.executor.cache.SmartCacheHelper .getResultSetCache(SmartCacheHelper.java:224)
>
> at
> org.eclipse.birt.data.engine.executor.cache.SmartCache.<init >(SmartCache.java:68)
>
> at
> org.eclipse.birt.data.engine.executor.transform.pass.PassUti l.populateOdiResultSet(PassUtil.java:108)
>
> at
> org.eclipse.birt.data.engine.executor.transform.pass.PassUti l.pass(PassUtil.java:61)
>
> at
> org.eclipse.birt.data.engine.executor.transform.pass.PassMan ager.doSinglePass(PassManager.java:185)
>
> at
> org.eclipse.birt.data.engine.executor.transform.pass.PassMan ager.pass(PassManager.java:90)
>
> at
> org.eclipse.birt.data.engine.executor.transform.pass.PassMan ager.populateResultSet(PassManager.java:72)
>
> at
> org.eclipse.birt.data.engine.executor.transform.ResultSetPop ulator.populateResultSet(ResultSetPopulator.java:208)
>
> at
> org.eclipse.birt.data.engine.executor.transform.CachedResult Set. <init>(CachedResultSet.java:132)
>
> at
> org.eclipse.birt.data.engine.executor.CandidateQuery.execute (CandidateQuery.java:106)
>
> at
> org.eclipse.birt.data.engine.impl.PreparedScriptDSQuery$Scri ptDSQueryExecutor.executeOdiQuery(PreparedScriptDSQuery.java :223)
>
> at
> org.eclipse.birt.data.engine.impl.QueryExecutor.execute(Quer yExecutor.java:767)
>
> at
> org.eclipse.birt.data.engine.impl.ServiceForQueryResults.exe cuteQuery(ServiceForQueryResults.java:217)
>
> at
> org.eclipse.birt.data.engine.impl.QueryResults.getResultIter ator(QueryResults.java:157)
>
> at
> org.eclipse.birt.report.engine.data.dte.QueryResultSet.<init >(QueryResultSet.java:83)
>
> at
> org.eclipse.birt.report.engine.data.dte.DteDataEngine.doExec uteQuery(DteDataEngine.java:157)
>
> at
> org.eclipse.birt.report.engine.data.dte.DteDataEngine.doExec uteQuery(DteDataEngine.java:117)
>
> at
> org.eclipse.birt.report.engine.data.dte.AbstractDataEngine.e xecute(AbstractDataEngine.java:182)
>
> at
> org.eclipse.birt.report.engine.executor.ExecutionContext.exe cuteQuery(ExecutionContext.java:1685)
>
> at
> org.eclipse.birt.report.engine.executor.QueryItemExecutor.ex ecuteQuery(QueryItemExecutor.java:76)
>
> at
> org.eclipse.birt.report.engine.executor.TableItemExecutor.ex ecute(TableItemExecutor.java:61)
>
> at
> org.eclipse.birt.report.engine.internal.executor.dup.Suppres sDuplicateItemExecutor.execute(SuppressDuplicateItemExecutor .java:42)
>
> at
> org.eclipse.birt.report.engine.internal.executor.wrap.Wrappe dReportItemExecutor.execute(WrappedReportItemExecutor.java:4 5)
>
> at
> org.eclipse.birt.report.engine.internal.executor.l18n.Locali zedReportItemExecutor.execute(LocalizedReportItemExecutor.ja va:33)
>
> at
> org.eclipse.birt.report.engine.layout.content.BlockStackingE xecutor.getNextChild(BlockStackingExecutor.java:48)
>
> at
> org.eclipse.birt.report.engine.layout.pdf.PDFBlockStackingLM .traverseChildren(PDFBlockStackingLM.java:83)
>
> at
> org.eclipse.birt.report.engine.layout.pdf.PDFStackingLM.layo utChildren(PDFStackingLM.java:141)
>
> at
> org.eclipse.birt.report.engine.layout.pdf.PDFPageLM.layout(P DFPageLM.java:212)
>
> at
> org.eclipse.birt.report.engine.layout.pdf.PDFReportLayoutEng ine.layoutReport(PDFReportLayoutEngine.java:64)
>
> at
> org.eclipse.birt.report.engine.layout.pdf.PDFReportLayoutEng ine.layout(PDFReportLayoutEngine.java:87)
>
> at
> org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.doR un(RunAndRenderTask.java:140)
>
> at
> org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run (RunAndRenderTask.java:68)
>
> at
> com.sbn.common.web.GenReportCtrl.executeReport(GenReportCtrl .java:130)
> at com.sbn.common.web.GenReportCtrl.sbnRequest(GenReportCtrl.ja va:55)
> at com.sbn.base.web.SbnBaseCtrl.handleRequest(SbnBaseCtrl.java: 52)
> at
> org.springframework.web.servlet.mvc.SimpleControllerHandlerA dapter.handle(SimpleControllerHandlerAdapter.java:45)
>
> at
> org.springframework.web.servlet.DispatcherServlet.doDispatch (DispatcherServlet.java:820)
>
> at
> org.springframework.web.servlet.DispatcherServlet.doService( DispatcherServlet.java:755)
>
> at
> org.springframework.web.servlet.FrameworkServlet.processRequ est(FrameworkServlet.java:396)
>
> at
> org.springframework.web.servlet.FrameworkServlet.doGet(Frame workServlet.java:350)
>
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:689)
> at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFi lter(ApplicationFilterChain.java:252)
>
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(App licationFilterChain.java:173)
>
> at
> org.acegisecurity.securechannel.ChannelProcessingFilter.doFi lter(ChannelProcessingFilter.java:138)
>
> at
> org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBe anProxy.java:98)
>
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFi lter(ApplicationFilterChain.java:202)
>
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(App licationFilterChain.java:173)
>
> at
> org.springframework.web.filter.CharacterEncodingFilter.doFil terInternal(CharacterEncodingFilter.java:78)
>
> at
> org.springframework.web.filter.OncePerRequestFilter.doFilter (OncePerRequestFilter.java:77)
>
> at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFi lter(ApplicationFilterChain.java:202)
>
> at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(App licationFilterChain.java:173)
>
> at
> org.apache.catalina.core.StandardWrapperValve.invoke(Standar dWrapperValve.java:213)
>
> at
> org.apache.catalina.core.StandardContextValve.invoke(Standar dContextValve.java:178)
>
> at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHo stValve.java:126)
>
> at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorRepo rtValve.java:105)
>
> at
> org.apache.catalina.core.StandardEngineValve.invoke(Standard EngineValve.java:107)
>
> at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAd apter.java:148)
> at
> org.apache.coyote.http11.Http11Processor.process(Http11Proce ssor.java:869)
> at
> org.apache.coyote.http11.Http11BaseProtocol$Http11Connection Handler.processConnection(Http11BaseProtocol.java:664)
>
> at
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(Poo lTcpEndpoint.java:527)
>
> at
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt( LeaderFollowerWorkerThread.java:80)
>
> at
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.ru n(ThreadPool.java:684)
>
> at java.lang.Thread.run(Thread.java:619)
> Dec 31, 2007 1:42:25 PM org.eclipse.birt.data.engine.impl.DataEngineImpl
> shutdown
> INFO: Data engine shuts down
>
>
>
>
|
|
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.03419 seconds