#1 2019-10-14 13:05:41

manuela
Member
Registered: 2019-10-14

Fehler beim Versenden von BIRT Reports über Scheduler

Hallo,

ich habe im ReportServer BIRT Reports hochgeladen und diese werden auch wie gewünscht angezeigt bzw. können wunderbar manuell per E-Mail versendet werden.

Möchte ich diese BIRT Reports nun aber automatisiert über den Scheduler versenden, erhalte ich folgende Fehlermeldung:

---
The execution of a scheduled report has failed. 

Report: Test
Error message: net.datenwerke.rs.core.service.reportmanager.exceptions.ReportExecutorException: The report could not be executed: Guice provision errors:

1) Error in custom provider, com.google.inject.OutOfScopeException: Cannot access scoped object. Either we are not currently inside an HTTP Servlet request, or you may have forgotten to apply com.google.inject.servlet.GuiceFilter as a servlet filter for this request.
  at net.datenwerke.rs.saiku.service.saiku.SaikuSessionContainer.class(SaikuSessionContainer.java:15)
  while locating net.datenwerke.rs.saiku.service.saiku.SaikuSessionContainer
    for parameter 5 at net.datenwerke.rs.saiku.service.saiku.reportengine.SaikuReportEngine.<init>(SaikuReportEngine.java:63)
  while locating net.datenwerke.rs.saiku.service.saiku.reportengine.SaikuReportEngine

1 error
Recipient: **** 

Error-Details: net.datenwerke.scheduler.service.scheduler.exceptions.JobExecutionException: net.datenwerke.rs.core.service.reportmanager.exceptions.ReportExecutorException: The report could not be executed: Guice provision errors:

1) Error in custom provider, com.google.inject.OutOfScopeException: Cannot access scoped object. Either we are not currently inside an HTTP Servlet request, or you may have forgotten to apply com.google.inject.servlet.GuiceFilter as a servlet filter for this request.
  at net.datenwerke.rs.saiku.service.saiku.SaikuSessionContainer.class(SaikuSessionContainer.java:15)
  while locating net.datenwerke.rs.saiku.service.saiku.SaikuSessionContainer
    for parameter 5 at net.datenwerke.rs.saiku.service.saiku.reportengine.SaikuReportEngine.<init>(SaikuReportEngine.java:63)
  while locating net.datenwerke.rs.saiku.service.saiku.reportengine.SaikuReportEngine

1 error
    at net.datenwerke.rs.scheduler.service.scheduler.jobs.report.ReportExecuteJob.doExecute(ReportExecuteJob.java:140)
    at net.datenwerke.scheduler.service.scheduler.entities.AbstractJob.execute(AbstractJob.java:184)
    at net.datenwerke.scheduler.service.scheduler.tasks.SchedulerTask.executeJob(SchedulerTask.java:646)
    at net.datenwerke.scheduler.service.scheduler.tasks.SchedulerTask.safeCall(SchedulerTask.java:208)
    at net.datenwerke.scheduler.service.scheduler.tasks.SchedulerTask.call(SchedulerTask.java:103)
    at net.datenwerke.scheduler.service.scheduler.tasks.SchedulerTask.call(SchedulerTask.java:1)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)
Caused by: net.datenwerke.rs.core.service.reportmanager.exceptions.ReportExecutorException: The report could not be executed: Guice provision errors:

1) Error in custom provider, com.google.inject.OutOfScopeException: Cannot access scoped object. Either we are not currently inside an HTTP Servlet request, or you may have forgotten to apply com.google.inject.servlet.GuiceFilter as a servlet filter for this request.
  at net.datenwerke.rs.saiku.service.saiku.SaikuSessionContainer.class(SaikuSessionContainer.java:15)
  while locating net.datenwerke.rs.saiku.service.saiku.SaikuSessionContainer
    for parameter 5 at net.datenwerke.rs.saiku.service.saiku.reportengine.SaikuReportEngine.<init>(SaikuReportEngine.java:63)
  while locating net.datenwerke.rs.saiku.service.saiku.reportengine.SaikuReportEngine

1 error
    at net.datenwerke.rs.core.service.reportmanager.ReportExecutorServiceImpl.execute(ReportExecutorServiceImpl.java:218)
    at net.datenwerke.rs.core.service.reportmanager.ReportExecutorServiceImpl.execute(ReportExecutorServiceImpl.java:119)
    at net.datenwerke.rs.core.service.reportmanager.ReportExecutorServiceImpl.execute(ReportExecutorServiceImpl.java:106)
    at net.datenwerke.rs.core.service.reportmanager.ReportExecutorServiceImpl.execute(ReportExecutorServiceImpl.java:101)
    at net.datenwerke.rs.scheduler.service.scheduler.jobs.report.ReportExecuteJob.doExecute(ReportExecuteJob.java:135)
    ... 9 more
Caused by: com.google.inject.ProvisionException: Guice provision errors:

1) Error in custom provider, com.google.inject.OutOfScopeException: Cannot access scoped object. Either we are not currently inside an HTTP Servlet request, or you may have forgotten to apply com.google.inject.servlet.GuiceFilter as a servlet filter for this request.
  at net.datenwerke.rs.saiku.service.saiku.SaikuSessionContainer.class(SaikuSessionContainer.java:15)
  while locating net.datenwerke.rs.saiku.service.saiku.SaikuSessionContainer
    for parameter 5 at net.datenwerke.rs.saiku.service.saiku.reportengine.SaikuReportEngine.<init>(SaikuReportEngine.java:63)
  while locating net.datenwerke.rs.saiku.service.saiku.reportengine.SaikuReportEngine

1 error
    at com.google.inject.internal.InjectorImpl$4.get(InjectorImpl.java:987)
    at com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1013)
    at net.datenwerke.rs.core.service.reportmanager.ReportExecutorServiceImpl.execute(ReportExecutorServiceImpl.java:177)
    ... 13 more
Caused by: com.google.inject.OutOfScopeException: Cannot access scoped object. Either we are not currently inside an HTTP Servlet request, or you may have forgotten to apply com.google.inject.servlet.GuiceFilter as a servlet filter for this request.
    at com.google.inject.servlet.GuiceFilter.getContext(GuiceFilter.java:135)
    at com.google.inject.servlet.GuiceFilter.getRequest(GuiceFilter.java:121)
    at com.google.inject.servlet.ServletScopes$2$1.get(ServletScopes.java:114)
    at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:40)
    at com.google.inject.internal.SingleParameterInjector.inject(SingleParameterInjector.java:38)
    at com.google.inject.internal.SingleParameterInjector.getAll(SingleParameterInjector.java:62)
    at com.google.inject.internal.ConstructorInjector.construct(ConstructorInjector.java:84)
    at com.google.inject.internal.ConstructorBindingImpl$Factory.get(ConstructorBindingImpl.java:254)
    at com.google.inject.internal.InjectorImpl$4$1.call(InjectorImpl.java:978)
    at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1024)
    at com.google.inject.internal.InjectorImpl$4.get(InjectorImpl.java:974)
    ... 15 more
---

Das tritt bei allen BIRT Reports auf, auch bei einem BIRT Report, welcher lediglich ein Bezeichnungsfeld enthält.

Wo könnte hier der Fehler liegen?

Folgende Versionen sind installiert:
ReportServer: RS3.1.0-6010
Java: 1.8
Tomcat: 9.0.17

Grüße
Manuela

Offline

#2 2019-10-14 13:13:45

eduardo
Administrator
Registered: 2016-11-01
Website

Re: Fehler beim Versenden von BIRT Reports über Scheduler

Hallo Manuela,

passiert das nur bei BIRT oder passiert das auch bei dynamischen Listen / Jasper ?

Grüße
Eduardo

Offline

#3 2019-10-14 13:30:20

manuela
Member
Registered: 2019-10-14

Re: Fehler beim Versenden von BIRT Reports über Scheduler

Hallo Eduardo,

ein Test mit einer dynamischen Liste und Versand manuell per E-Mail klappt ebenfalls.
Ein Versand über den Scheduler liefert allerdings diesselbe Fehlermeldung wie bei BIRT.

Grüße
Manuela

Offline

#4 2019-10-15 10:43:26

manuela
Member
Registered: 2019-10-14

Re: Fehler beim Versenden von BIRT Reports über Scheduler

Es hing wohl mit der Installation zusammen, denn nachdem ich die Anwendung samt Datenbank gelöscht und noch einmal neu installiert hatte, war ein Versenden von Reports über den Scheduler möglich.
Das Thema kann somit geschlossen werden.

Gruß
Manuela

Offline

#5 2019-10-15 19:40:40

eduardo
Administrator
Registered: 2016-11-01
Website

Re: Fehler beim Versenden von BIRT Reports über Scheduler

Hallo Manuela,

wir können den Fehler sehen. Es handelt sich um einen Bug, auch wenn er momentan bei dir nicht zu sehen ist. Dazu habe ich Ticket RS-3732 erstellt. Das Problem habe ich bereits gefixed und es wird mit der nächsten Patch Version korrigiert sein.
Ich aktualisiere diesen Thread wenn wir das veröffentlichen.

Viele Grüße
Eduardo

Offline

#6 2019-10-18 13:31:22

eduardo
Administrator
Registered: 2016-11-01
Website

Re: Fehler beim Versenden von BIRT Reports über Scheduler

Hallo Manuela,

wir haben heute die Version 3.1.0-6011 veröffentlicht. Dieser Bug ist hier behoben.

Viele Grüße
Eduardo

Offline

#7 2019-10-19 16:40:55

eduardo
Administrator
Registered: 2016-11-01
Website

Re: Fehler beim Versenden von BIRT Reports über Scheduler

Hallo Manuela,

wegen eines Apache POI 4 Bugs haben wir heute die Version 3.1.0-6015 veröffentlicht, die den gefixten Bug enthält.

Viele Grüße
Eduardo

Offline

Board footer

Powered by FluxBB