Ошибка при просмотре отчета

Обсуждение Stimulsoft Reports.Java
Ответить
alexeyfressko
Сообщения: 60
Зарегистрирован: 16 фев 2015, 21:40

Ошибка при просмотре отчета

Сообщение alexeyfressko » 11 июл 2016, 16:43

В версии 2016.1 данный отчет работает нормально

В версии 2016.1.19 ошибка:

Код: Выделить всё

июл 11, 2016 8:23:33 PM com.stimulsoft.report.dictionary.databases.StiJDBCDatabase fillTable
SEVERE: PreparedStatement=com.mysql.jdbc.JDBC4PreparedStatement@438f8c3a: select a.*,b.name as customer_name,b.identity_,b.identity_type,b.commercial_name,c.name as user_name,
(SELECT GROUP_CONCAT(y.description SEPARATOR '/') FROM geo_areas_tree x INNER JOIN geo_areas y ON y.code=x.parent_code WHERE x.child_code=d.geo_area_code) as geo_area_description,d.street1,d.street2,d.block,d.reference,e.description as payment_method_description
 from invoices a
inner join customers b on b.code=a.customer_code
inner join users c on c.code=a.user_code
left join customer_addresses d on d.code=a.customer_address_code and d.customer_code=a.customer_code
left join payment_methods e on e.code=a.payment_method_code
where a.id=1911
java.lang.RuntimeException: com.stimulsoft.base.exception.StiException: StiJDBCDatabase [promptUserNameAndPassword=false, url=jdbc:mysql://127.0.0.1:3306/motordesa, user=repmotordesa, password=****, driver=com.mysql.jdbc.Driver, other={}]
	at com.stimulsoft.report.dictionary.StiDictionary.connect(StiDictionary.java:1218)
	at com.stimulsoft.report.engine.engineV2.StiRenderProviderV2.ConnectToData(StiRenderProviderV2.java:370)
	at com.stimulsoft.report.engine.engineV2.StiRenderProviderV2.Render(StiRenderProviderV2.java:124)
	at com.stimulsoft.report.engine.engineV2.builders.StiReportV2Builder.RenderSingleReport(StiReportV2Builder.java:64)
	at com.stimulsoft.report.StiReport.RenderReport(StiReport.java:1942)
	at com.stimulsoft.report.StiReport.Render(StiReport.java:1858)
	at com.stimulsoft.report.StiReport.Render(StiReport.java:1793)
	at com.stimulsoft.report.StiReport.Render(StiReport.java:1783)
	at com.stimulsoft.report.StiReport.Render(StiReport.java:1768)
	at com.stimulsoft.report.StiReport.render(StiReport.java:1751)
	at com.stimulsoft.flex.StiRenderReportAction.render(StiRenderReportAction.java:18)
	at com.mobilvendor.reports.MobilVendorRenderReportAction.render(MobilVendorRenderReportAction.java:24)
	at com.stimulsoft.flex.events.StiRenderReport.process(StiRenderReport.java:34)
	at com.stimulsoft.flex.events.StiAbstractAction.run(StiAbstractAction.java:19)
	at com.stimulsoft.web.servlet.StiServlet.runAction(StiServlet.java:23)
	at com.stimulsoft.web.servlet.StiViewerFxServlet.processingParam(StiViewerFxServlet.java:74)
	at com.stimulsoft.web.servlet.StiViewerFxServlet.processing(StiViewerFxServlet.java:54)
	at com.stimulsoft.web.servlet.StiViewerFxServlet.doPost(StiViewerFxServlet.java:43)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:646)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Unknown Source)
Caused by: com.stimulsoft.base.exception.StiException: StiJDBCDatabase [promptUserNameAndPassword=false, url=jdbc:mysql://127.0.0.1:3306/motordesa, user=repmotordesa, password=****, driver=com.mysql.jdbc.Driver, other={}]
	at com.stimulsoft.report.dictionary.databases.StiJDBCDatabase.connect(StiJDBCDatabase.java:264)
	at com.stimulsoft.report.dictionary.databases.StiJDBCDatabase.connect(StiJDBCDatabase.java:241)
	at com.stimulsoft.report.dictionary.dataSources.StiDataStoreSource.connect(StiDataStoreSource.java:92)
	at com.stimulsoft.report.dictionary.dataSources.StiDataSourcesCollection.connect(StiDataSourcesCollection.java:82)
	at com.stimulsoft.report.dictionary.StiDictionary.connect(StiDictionary.java:1216)
	... 39 more
Caused by: java.lang.RuntimeException: java.lang.ArrayIndexOutOfBoundsException: -1
	at com.stimulsoft.report.dictionary.databases.StiJDBCDatabase.fillTable(StiJDBCDatabase.java:286)
	at com.stimulsoft.report.dictionary.databases.StiJDBCDatabase.connect(StiJDBCDatabase.java:261)
	... 43 more
Caused by: java.lang.ArrayIndexOutOfBoundsException: -1
	at java.util.ArrayList.elementData(Unknown Source)
	at java.util.ArrayList.set(Unknown Source)
	at com.stimulsoft.report.dictionary.data.DataCellCollection.set(DataCellCollection.java:64)
	at com.stimulsoft.report.dictionary.data.DataRow.addSqlCell(DataRow.java:110)
	at com.stimulsoft.report.dictionary.databases.StiJDBCDatabase.getData(StiJDBCDatabase.java:307)
	at com.stimulsoft.report.dictionary.databases.StiJDBCDatabase.fillTable(StiJDBCDatabase.java:283)
	... 44 more
июл 11, 2016 8:23:33 PM com.stimulsoft.web.servlet.StiServlet error
SEVERE: Error
java.lang.RuntimeException: com.stimulsoft.base.exception.StiException: StiJDBCDatabase [promptUserNameAndPassword=false, url=jdbc:mysql://127.0.0.1:3306/motordesa, user=repmotordesa, password=****, driver=com.mysql.jdbc.Driver, other={}]
	at com.stimulsoft.report.dictionary.StiDictionary.connect(StiDictionary.java:1218)
	at com.stimulsoft.report.engine.engineV2.StiRenderProviderV2.ConnectToData(StiRenderProviderV2.java:370)
	at com.stimulsoft.report.engine.engineV2.StiRenderProviderV2.Render(StiRenderProviderV2.java:124)
	at com.stimulsoft.report.engine.engineV2.builders.StiReportV2Builder.RenderSingleReport(StiReportV2Builder.java:64)
	at com.stimulsoft.report.StiReport.RenderReport(StiReport.java:1942)
	at com.stimulsoft.report.StiReport.Render(StiReport.java:1858)
	at com.stimulsoft.report.StiReport.Render(StiReport.java:1793)
	at com.stimulsoft.report.StiReport.Render(StiReport.java:1783)
	at com.stimulsoft.report.StiReport.Render(StiReport.java:1768)
	at com.stimulsoft.report.StiReport.render(StiReport.java:1751)
	at com.stimulsoft.flex.StiRenderReportAction.render(StiRenderReportAction.java:18)
	at com.mobilvendor.reports.MobilVendorRenderReportAction.render(MobilVendorRenderReportAction.java:24)
	at com.stimulsoft.flex.events.StiRenderReport.process(StiRenderReport.java:34)
	at com.stimulsoft.flex.events.StiAbstractAction.run(StiAbstractAction.java:19)
	at com.stimulsoft.web.servlet.StiServlet.runAction(StiServlet.java:23)
	at com.stimulsoft.web.servlet.StiViewerFxServlet.processingParam(StiViewerFxServlet.java:74)
	at com.stimulsoft.web.servlet.StiViewerFxServlet.processing(StiViewerFxServlet.java:54)
	at com.stimulsoft.web.servlet.StiViewerFxServlet.doPost(StiViewerFxServlet.java:43)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:646)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1074)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
	at java.lang.Thread.run(Unknown Source)
Caused by: com.stimulsoft.base.exception.StiException: StiJDBCDatabase [promptUserNameAndPassword=false, url=jdbc:mysql://127.0.0.1:3306/motordesa, user=repmotordesa, password=****, driver=com.mysql.jdbc.Driver, other={}]
	at com.stimulsoft.report.dictionary.databases.StiJDBCDatabase.connect(StiJDBCDatabase.java:264)
	at com.stimulsoft.report.dictionary.databases.StiJDBCDatabase.connect(StiJDBCDatabase.java:241)
	at com.stimulsoft.report.dictionary.dataSources.StiDataStoreSource.connect(StiDataStoreSource.java:92)
	at com.stimulsoft.report.dictionary.dataSources.StiDataSourcesCollection.connect(StiDataSourcesCollection.java:82)
	at com.stimulsoft.report.dictionary.StiDictionary.connect(StiDictionary.java:1216)
	... 39 more
Caused by: java.lang.RuntimeException: java.lang.ArrayIndexOutOfBoundsException: -1
	at com.stimulsoft.report.dictionary.databases.StiJDBCDatabase.fillTable(StiJDBCDatabase.java:286)
	at com.stimulsoft.report.dictionary.databases.StiJDBCDatabase.connect(StiJDBCDatabase.java:261)
	... 43 more
Caused by: java.lang.ArrayIndexOutOfBoundsException: -1
	at java.util.ArrayList.elementData(Unknown Source)
	at java.util.ArrayList.set(Unknown Source)
	at com.stimulsoft.report.dictionary.data.DataCellCollection.set(DataCellCollection.java:64)
	at com.stimulsoft.report.dictionary.data.DataRow.addSqlCell(DataRow.java:110)
	at com.stimulsoft.report.dictionary.databases.StiJDBCDatabase.getData(StiJDBCDatabase.java:307)
	at com.stimulsoft.report.dictionary.databases.StiJDBCDatabase.fillTable(StiJDBCDatabase.java:283)
	... 44 more
Отчет прикрепляю. Базы дать не могу.
Вложения
Report.xml
Отчет xml
(41.12 КБ) 161 скачивание
Vadim
Сообщения: 101
Зарегистрирован: 04 апр 2013, 08:26

Re: Ошибка при просмотре отчета

Сообщение Vadim » 13 июл 2016, 12:15

Здравствуйте.
Мы не смогли воспроизвести ошибку, попробуйте тестовые библиотеки java.stimulsoft.com/stimulsoft.reports.2016.1.19-trial.zip
и пришлите нам лог с TEST_INDEX:
alexeyfressko
Сообщения: 60
Зарегистрирован: 16 фев 2015, 21:40

Re: Ошибка при просмотре отчета

Сообщение alexeyfressko » 15 июл 2016, 07:43

Я понял в чем дело.

В команде select используется выражение *. Отчет сделан в январе, потом были добавлены новые колонки в таблицу invoices.
Ошибка происходит если при возвращении результата команды в resultSet присутствуют колонки, которые не объявлены в дизайнере отчетов. Если я обновляю колонки в дизайнере через и потом смотрю отчет - все нормально.

Нельзя ли сделать так чтобы необъявленные колонки игнорировались чтобы не возникала ошибка?
Vadim
Сообщения: 101
Зарегистрирован: 04 апр 2013, 08:26

Re: Ошибка при просмотре отчета

Сообщение Vadim » 15 июл 2016, 13:48

Здравствуйте.
Исправлено, будет доступно с 2016.1.21 версии
Ответить