BIRT 报告:服务错误无法评估参数验证错误

BIRT Report: Service error Cannot evaluate errors on parameters validation

您好,我正在使用 7 个过滤器制作 BIRT 报告,如下图所示。 我的报告工作正常,但有时会出现以下错误:

Service Error: Cannot evaluate errors on parameters validation

我搜索了很多,但没有找到任何合适的理由it.Please建议我一个正确的答案。

日志:

    it.eng.spagobi.commons.utilities.SpagoBIServiceExceptionHandler.logError: The error full stack trace is:
it.eng.spagobi.utilities.exceptions.SpagoBIServiceException: Cannot evaluate errors on parameters validation
    at it.eng.spagobi.commons.utilities.SpagoBIServiceExceptionHandler.getWrappedException(SpagoBIServiceExceptionHandler.java:85)
    at it.eng.spagobi.commons.services.AbstractSpagoBIAction.handleException(AbstractSpagoBIAction.java:163)
    at it.eng.spagobi.commons.services.AbstractSpagoBIAction.service(AbstractSpagoBIAction.java:70)
    at it.eng.spago.dispatching.action.ActionCoordinator.invokeServiceBusiness(ActionCoordinator.java:209)
    at it.eng.spago.dispatching.action.ActionCoordinator.service(ActionCoordinator.java:158)
    at it.eng.spago.dispatching.httpchannel.AdapterHTTP.service(AdapterHTTP.java:425)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at it.eng.spagobi.utilities.filters.AntiInjectionFilter.doFilter(AntiInjectionFilter.java:33)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at it.eng.spagobi.commons.filters.ProfileFilter.doFilter(ProfileFilter.java:119)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at it.eng.spagobi.commons.filters.SpagoBICoreCheckSessionFilter.doFilter(SpagoBICoreCheckSessionFilter.java:82)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at it.eng.spagobi.utilities.filters.EncodingFilter.doFilter(EncodingFilter.java:42)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1041)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:603)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
Caused by: it.eng.spagobi.utilities.exceptions.SpagoBIServiceException: Cannot evaluate errors on parameters validation
    at it.eng.spagobi.analiticalmodel.execution.service.GetUrlForExecutionAction.handleNormalExecution(GetUrlForExecutionAction.java:337)
    at it.eng.spagobi.analiticalmodel.execution.service.GetUrlForExecutionAction.doService(GetUrlForExecutionAction.java:75)
    at it.eng.spagobi.commons.services.AbstractSpagoBIAction.service(AbstractSpagoBIAction.java:68)
    ... 35 more
Caused by: it.eng.spago.error.EMFInternalError: severity [ERROR] description [SelectCommand :: execute() :: 
org.postgresql.util.PSQLException: ERROR: relation "fattura_intestazione" does not exist
  Posizione: 103
    at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2161)
    at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1890)
    at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:255)
    at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:559)
    at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:403)
    at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:283)
    at it.eng.spago.dbaccess.sql.command.std.SelectCommand.execute(SelectCommand.java:93)
    at it.eng.spagobi.behaviouralmodel.lov.bo.QueryDetail.validateValues(QueryDetail.java:671)
    at it.eng.spagobi.analiticalmodel.document.handlers.ExecutionInstance.getValidationErrorsOnValuesForQueries(ExecutionInstance.java:890)
    at it.eng.spagobi.analiticalmodel.document.handlers.ExecutionInstance.getValidationErrorsOnValues(ExecutionInstance.java:810)
    at it.eng.spagobi.analiticalmodel.document.handlers.ExecutionInstance.getParametersErrors(ExecutionInstance.java:620)
    at it.eng.spagobi.analiticalmodel.execution.service.GetUrlForExecutionAction.handleNormalExecution(GetUrlForExecutionAction.java:335)
    at it.eng.spagobi.analiticalmodel.execution.service.GetUrlForExecutionAction.doService(GetUrlForExecutionAction.java:75)
    at it.eng.spagobi.commons.services.AbstractSpagoBIAction.service(AbstractSpagoBIAction.java:68)
    at it.eng.spago.dispatching.action.ActionCoordinator.invokeServiceBusiness(ActionCoordinator.java:209)
    at it.eng.spago.dispatching.action.ActionCoordinator.service(ActionCoordinator.java:158)
    at it.eng.spago.dispatching.httpchannel.AdapterHTTP.service(AdapterHTTP.java:425)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at it.eng.spagobi.utilities.filters.AntiInjectionFilter.doFilter(AntiInjectionFilter.java:33)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at it.eng.spagobi.commons.filters.ProfileFilter.doFilter(ProfileFilter.java:119)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at it.eng.spagobi.commons.filters.SpagoBICoreCheckSessionFilter.doFilter(SpagoBICoreCheckSessionFilter.java:82)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at it.eng.spagobi.utilities.filters.EncodingFilter.doFilter(EncodingFilter.java:42)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1041)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:603)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
]
    at it.eng.spago.dbaccess.Utils.generateInternalError(Utils.java:55)
    at it.eng.spago.dbaccess.sql.command.std.SelectCommand.execute(SelectCommand.java:128)
    at it.eng.spagobi.behaviouralmodel.lov.bo.QueryDetail.validateValues(QueryDetail.java:671)
    at it.eng.spagobi.analiticalmodel.document.handlers.ExecutionInstance.getValidationErrorsOnValuesForQueries(ExecutionInstance.java:890)
    at it.eng.spagobi.analiticalmodel.document.handlers.ExecutionInstance.getValidationErrorsOnValues(ExecutionInstance.java:810)
    at it.eng.spagobi.analiticalmodel.document.handlers.ExecutionInstance.getParametersErrors(ExecutionInstance.java:620)
    at it.eng.spagobi.analiticalmodel.execution.service.GetUrlForExecutionAction.handleNormalExecution(GetUrlForExecutionAction.java:335)
    ... 37 more
it.eng.spagobi.commons.utilities.SpagoBIServiceExceptionHandler.logError: Cannot evaluate errors on parameters validation
it.eng.spagobi.commons.utilities.SpagoBIServiceExceptionHandler.logError: The error root cause is: it.eng.spago.error.EMFInternalError: severity [ERROR] description [SelectCommand :: execute() :: 
org.postgresql.util.PSQLException: ERROR: relation "fattura_intestazione" does not exist
  Posizione: 103
    at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2161)
    at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1890)
    at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:255)
    at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:559)
    at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:403)
    at org.postgresql.jdbc2.AbstractJdbc2Statement.executeQuery(AbstractJdbc2Statement.java:283)
    at it.eng.spago.dbaccess.sql.command.std.SelectCommand.execute(SelectCommand.java:93)
    at it.eng.spagobi.behaviouralmodel.lov.bo.QueryDetail.validateValues(QueryDetail.java:671)
    at it.eng.spagobi.analiticalmodel.document.handlers.ExecutionInstance.getValidationErrorsOnValuesForQueries(ExecutionInstance.java:890)
    at it.eng.spagobi.analiticalmodel.document.handlers.ExecutionInstance.getValidationErrorsOnValues(ExecutionInstance.java:810)
    at it.eng.spagobi.analiticalmodel.document.handlers.ExecutionInstance.getParametersErrors(ExecutionInstance.java:620)
    at it.eng.spagobi.analiticalmodel.execution.service.GetUrlForExecutionAction.handleNormalExecution(GetUrlForExecutionAction.java:335)
    at it.eng.spagobi.analiticalmodel.execution.service.GetUrlForExecutionAction.doService(GetUrlForExecutionAction.java:75)
    at it.eng.spagobi.commons.services.AbstractSpagoBIAction.service(AbstractSpagoBIAction.java:68)
    at it.eng.spago.dispatching.action.ActionCoordinator.invokeServiceBusiness(ActionCoordinator.java:209)
    at it.eng.spago.dispatching.action.ActionCoordinator.service(ActionCoordinator.java:158)
    at it.eng.spago.dispatching.httpchannel.AdapterHTTP.service(AdapterHTTP.java:425)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at it.eng.spagobi.utilities.filters.AntiInjectionFilter.doFilter(AntiInjectionFilter.java:33)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at it.eng.spagobi.commons.filters.ProfileFilter.doFilter(ProfileFilter.java:119)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at it.eng.spagobi.commons.filters.SpagoBICoreCheckSessionFilter.doFilter(SpagoBICoreCheckSessionFilter.java:82)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at it.eng.spagobi.utilities.filters.EncodingFilter.doFilter(EncodingFilter.java:42)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1041)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:603)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)
]
it.eng.spagobi.commons.utilities.SpagoBIServiceExceptionHandler.logError: The error root cause stack trace is:
it.eng.spagobi.utilities.exceptions.SpagoBIServiceException: Cannot evaluate errors on parameters validation
    at it.eng.spagobi.analiticalmodel.execution.service.GetUrlForExecutionAction.handleNormalExecution(GetUrlForExecutionAction.java:337)
    at it.eng.spagobi.analiticalmodel.execution.service.GetUrlForExecutionAction.doService(GetUrlForExecutionAction.java:75)
    at it.eng.spagobi.commons.services.AbstractSpagoBIAction.service(AbstractSpagoBIAction.java:68)
    at it.eng.spago.dispatching.action.ActionCoordinator.invokeServiceBusiness(ActionCoordinator.java:209)
    at it.eng.spago.dispatching.action.ActionCoordinator.service(ActionCoordinator.java:158)
    at it.eng.spago.dispatching.httpchannel.AdapterHTTP.service(AdapterHTTP.java:425)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at it.eng.spagobi.utilities.filters.AntiInjectionFilter.doFilter(AntiInjectionFilter.java:33)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at it.eng.spagobi.commons.filters.ProfileFilter.doFilter(ProfileFilter.java:119)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at it.eng.spagobi.commons.filters.SpagoBICoreCheckSessionFilter.doFilter(SpagoBICoreCheckSessionFilter.java:82)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at it.eng.spagobi.utilities.filters.EncodingFilter.doFilter(EncodingFilter.java:42)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
    at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:502)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100)
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1041)
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:603)
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)

我在您的错误日志中看到以下内容

org.postgresql.util.PSQLException: ERROR: relation "fattura_intestazione" does not exist.

它似乎在您的报告执行的某个时刻寻找 fattura_intestazione,主要是在参数页面执行期间。

我觉得您需要处理参数的一些意外情况。我建议以 fattura_intestazione 作为指针并继续进行。

这个问题我在BI上也遇到过很多次server.It真是气死人了。 我觉得是服务器端的参数配置和report的参数配置不匹配导致的。

就我而言,我使用这些东西解决了它。

1.LOVs(值列表)中删除分号。

2. 确保 URL 名称(为报告设置分析驱动程序时)必须与参数名称相同在报告中。

3. LOV 的查询必须与报表中的相同数据集查询。