Ändern vom Eigentümer einer Zeitsteuerung
Quote from szfg_jasper on 8. April 2026, 6:46Zum 01.03.2026 hat sich ein Kollege in den wohlverdienten Ruhestand verabschiedet. Seit einigen Tagen nun macht der JasperServer nun Probleme mit den Zeitsteuerungen, die dem Kollegen gehörten.Fehlermeldung im Log:2026-03-15T06:50:00,116 ERROR ReportExecutionJob,quartzScheduler_Worker-4:257 - *** ReportExecutionJob.execute EXCEPTION *** forInstance: ASFGVSWRXJASPEP1773302435551, trigger: ReportJobs.trigger_1221971_0, scheduled fire time: 2026-03-15 06:50:00.000, fired at: 2026-03-15 06:50:00.062 on ASFGVSWRXJASPEP17733024355511773302435646 com.jaspersoft.jasperserver.api.JSException: jsexception.user.expiredArguments: "XXXX",at com.jaspersoft.jasperserver.api.engine.common.service.impl.AcegiSecurityContextProvider.setAuthenticatedUser(AcegiSecurityContextProvider.java:118)at sun.reflect.GeneratedMethodAccessor713.invoke(Unknown Source)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:498)at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:333)at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207)at com.sun.proxy.$Proxy85.setAuthenticatedUser(Unknown Source)at com.jaspersoft.jasperserver.api.engine.scheduling.quartz.ReportExecutionJob.execute(ReportExecutionJob.java:244)at org.quartz.core.JobRunShell.run(JobRunShell.java:202)at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)Da die Faulheit siegt, habe ich versucht den Eigentümer in der Datenbanktabelle jireportjob auf einen anderen User zu ändern. Im Frontend sieht das auch gut aus. Allerdings bricht die Zeitsteuerung nach wie vor mit dem obenstehenden Fehler ab.Komischer wiese konnte ich den Fehler mit einer neuen Zeitsteuerung provozieren in dem ich den Eigentümer geändert habe. Nach ändern auf einen aktiven User war der Fehler auch wieder verschwunden.Haben Sie noch einen Tipp wie ich es verhindern kann die Zeitsteuerungen neu anlegen zu müssen?Ein löschen des Inaktiven LDAP-User ist nicht möglich.2026-03-15T17:08:33,290 ERROR BatchingBatch,http-nio-8080-exec-4:120 - HHH000315: Exception executing batch [java.sql.BatchUpdateException: Batch entry 0 delete from JIUser where id=731 was aborted: FEHLER: Aktualisieren oder Löschen in Tabelle »jiuser« verletzt Fremdschlüssel-Constraint »fk7caj87u72rymu6805gtek03y8« von Tabelle »jiaccessevent«Detail: Auf Schlüssel (id)=(731) wird noch aus Tabelle »jiaccessevent« verwiesen. Call getNextException to see other errors in the batch.], SQL: delete from JIUser where id=?2026-03-15T17:08:33,291 ERROR SqlExceptionHelper,http-nio-8080-exec-4:131 - Batch entry 0 delete from JIUser where id=731 was aborted: FEHLER: Aktualisieren oder Löschen in Tabelle »jiuser« verletzt Fremdschlüssel-Constraint »fk7caj87u72rymu6805gtek03y8« von Tabelle »jiaccessevent«Detail: Auf Schlüssel (id)=(731) wird noch aus Tabelle »jiaccessevent« verwiesen. Call getNextException to see other errors in the batch.2026-03-15T17:08:33,291 ERROR SqlExceptionHelper,http-nio-8080-exec-4:131 - FEHLER: Aktualisieren oder Löschen in Tabelle »jiuser« verletzt Fremdschlüssel-Constraint »fk7caj87u72rymu6805gtek03y8« von Tabelle »jiaccessevent«Detail: Auf Schlüssel (id)=(731) wird noch aus Tabelle »jiaccessevent« verwiesen.2026-03-15T17:08:33,294 ERROR ExceptionMapperStandardImpl,http-nio-8080-exec-4:39 - HHH000346: Error during managed flush [org.hibernate.exception.ConstraintViolationException: could not execute batch]2026-03-15T17:08:33,297 ERROR SecureExceptionHandlerImpl,http-nio-8080-exec-4:116 - Auf dem Server ist ein Fehler aufgetreten. Versuchen Sie es erneut, oder wenden Sie sich an die Siteadministratoren. (Fehler-UID: 4b9084ab-f9c3-4b01-b812-f3f30ec97bee)
2026-03-15T06:50:00,116 ERROR ReportExecutionJob,quartzScheduler_Worker-4:257 - *** ReportExecutionJob.execute EXCEPTION *** forInstance: ASFGVSWRXJASPEP1773302435551, trigger: ReportJobs.trigger_1221971_0, scheduled fire time: 2026-03-15 06:50:00.000, fired at: 2026-03-15 06:50:00.062 on ASFGVSWRXJASPEP17733024355511773302435646 com.jaspersoft.jasperserver.api.JSException: jsexception.user.expiredArguments: "XXXX",at com.jaspersoft.jasperserver.api.engine.common.service.impl.AcegiSecurityContextProvider.setAuthenticatedUser(AcegiSecurityContextProvider.java:118)at sun.reflect.GeneratedMethodAccessor713.invoke(Unknown Source)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:498)at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:333)at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207)at com.sun.proxy.$Proxy85.setAuthenticatedUser(Unknown Source)at com.jaspersoft.jasperserver.api.engine.scheduling.quartz.ReportExecutionJob.execute(ReportExecutionJob.java:244)at org.quartz.core.JobRunShell.run(JobRunShell.java:202)at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
2026-03-15T17:08:33,290 ERROR BatchingBatch,http-nio-8080-exec-4:120 - HHH000315: Exception executing batch [java.sql.BatchUpdateException: Batch entry 0 delete from JIUser where id=731 was aborted: FEHLER: Aktualisieren oder Löschen in Tabelle »jiuser« verletzt Fremdschlüssel-Constraint »fk7caj87u72rymu6805gtek03y8« von Tabelle »jiaccessevent«Detail: Auf Schlüssel (id)=(731) wird noch aus Tabelle »jiaccessevent« verwiesen. Call getNextException to see other errors in the batch.], SQL: delete from JIUser where id=?2026-03-15T17:08:33,291 ERROR SqlExceptionHelper,http-nio-8080-exec-4:131 - Batch entry 0 delete from JIUser where id=731 was aborted: FEHLER: Aktualisieren oder Löschen in Tabelle »jiuser« verletzt Fremdschlüssel-Constraint »fk7caj87u72rymu6805gtek03y8« von Tabelle »jiaccessevent«Detail: Auf Schlüssel (id)=(731) wird noch aus Tabelle »jiaccessevent« verwiesen. Call getNextException to see other errors in the batch.2026-03-15T17:08:33,291 ERROR SqlExceptionHelper,http-nio-8080-exec-4:131 - FEHLER: Aktualisieren oder Löschen in Tabelle »jiuser« verletzt Fremdschlüssel-Constraint »fk7caj87u72rymu6805gtek03y8« von Tabelle »jiaccessevent«Detail: Auf Schlüssel (id)=(731) wird noch aus Tabelle »jiaccessevent« verwiesen.2026-03-15T17:08:33,294 ERROR ExceptionMapperStandardImpl,http-nio-8080-exec-4:39 - HHH000346: Error during managed flush [org.hibernate.exception.ConstraintViolationException: could not execute batch]2026-03-15T17:08:33,297 ERROR SecureExceptionHandlerImpl,http-nio-8080-exec-4:116 - Auf dem Server ist ein Fehler aufgetreten. Versuchen Sie es erneut, oder wenden Sie sich an die Siteadministratoren. (Fehler-UID: 4b9084ab-f9c3-4b01-b812-f3f30ec97bee)
Quote from jasperman on 9. April 2026, 21:58For search reasons I will translate your request into english first:
On March 1st, 2026, a colleague retired. For the past few days, JasperServer has been experiencing problems with the time controls that belonged to him.
Error message in the log:
2026-03-15T06:50:00,116 ERROR ReportExecutionJob,quartzScheduler_Worker-4:257 - *** ReportExecutionJob.execute EXCEPTION *** for Instance: ASFGVSWRXJASPEP1773302435551, trigger: ReportJobs.trigger_1221971_0, scheduled fire time: 2026-03-15 06:50:00.000, fired at: 2026-03-15 06:50:00.062 on ASFGVSWRXJASPEP17733024355511773302435646 com.jaspersoft.jasperserver.api.JSException: jsexception.user.expired Arguments: "XXXX", at com.jaspersoft.jasperserver.api.engine.common.service.impl.AcegiSecurityContextProvider.setAuthenticatedUser(AcegiSecurityContextProvider.java:118) at sun.reflect.GeneratedMethodAccessor713.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:333) at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207) at com.sun.proxy.$Proxy85.setAuthenticatedUser(Unknown Source) at com.jaspersoft.jasperserver.api.engine.scheduling.quartz.ReportExecutionJob.execute(ReportExecutionJob.java:244) at org.quartz.core.JobRunShell.run(JobRunShell.java:202) at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
Since laziness won out, I tried changing the owner in the database table `jireportjob` to a different user. This looks fine in the frontend. However, the timer still fails with the error mentioned above.
Oddly enough, I was able to reproduce the error with a new timer by changing the owner. After changing the owner to an active user, the error disappeared.
Do you have any suggestions on how I can avoid having to recreate the timers? Deleting the inactive LDAP user is not possible.
2026-03-15T17:08:33,290 ERROR BatchingBatch,http-nio-8080-exec-4:120 - HHH000315: Exception executing batch [java.sql.BatchUpdateException: Batch entry 0 delete from JIUser where id=731 was aborted: FEHLER: Aktualisieren oder Löschen in Tabelle »jiuser« verletzt Fremdschlüssel-Constraint »fk7caj87u72rymu6805gtek03y8« von Tabelle »jiaccessevent«
Detail: Auf Schlüssel (id)=(731) wird noch aus Tabelle »jiaccessevent« verwiesen. Call getNextException to see other errors in the batch.], SQL: delete from JIUser where id=?
2026-03-15T17:08:33,291 ERROR SqlExceptionHelper,http-nio-8080-exec-4:131 - Batch entry 0 delete from JIUser where id=731 was aborted: FEHLER: Aktualisieren oder Löschen in Tabelle »jiuser« verletzt Fremdschlüssel-Constraint »fk7caj87u72rymu6805gtek03y8« von Tabelle »jiaccessevent«
Detail: Auf Schlüssel (id)=(731) wird noch aus Tabelle »jiaccessevent« verwiesen. Call getNextException to see other errors in the batch.
2026-03-15T17:08:33,291 ERROR SqlExceptionHelper,http-nio-8080-exec-4:131 - FEHLER: Aktualisieren oder Löschen in Tabelle »jiuser« verletzt Fremdschlüssel-Constraint »fk7caj87u72rymu6805gtek03y8« von Tabelle »jiaccessevent«
Detail: Auf Schlüssel (id)=(731) wird noch aus Tabelle »jiaccessevent« verwiesen.
2026-03-15T17:08:33,294 ERROR ExceptionMapperStandardImpl,http-nio-8080-exec-4:39 - HHH000346: Error during managed flush [org.hibernate.exception.ConstraintViolationException: could not execute batch]
2026-03-15T17:08:33,297 ERROR SecureExceptionHandlerImpl,http-nio-8080-exec-4:116 - Auf dem Server ist ein Fehler aufgetreten. Versuchen Sie es erneut, oder wenden Sie sich an die Siteadministratoren. (Fehler-UID: 4b9084ab-f9c3-4b01-b812-f3f30ec97bee)
For search reasons I will translate your request into english first:
On March 1st, 2026, a colleague retired. For the past few days, JasperServer has been experiencing problems with the time controls that belonged to him.
Error message in the log:
2026-03-15T06:50:00,116 ERROR ReportExecutionJob,quartzScheduler_Worker-4:257 - *** ReportExecutionJob.execute EXCEPTION *** for
Instance: ASFGVSWRXJASPEP1773302435551, trigger: ReportJobs.trigger_1221971_0, scheduled fire time: 2026-03-15 06:50:00.000, fired at: 2026-03-15 06:50:00.062 on ASFGVSWRXJASPEP17733024355511773302435646 com.jaspersoft.jasperserver.api.JSException: jsexception.user.expired
Arguments: "XXXX",
at com.jaspersoft.jasperserver.api.engine.common.service.impl.AcegiSecurityContextProvider.setAuthenticatedUser(AcegiSecurityContextProvider.java:118)
at sun.reflect.GeneratedMethodAccessor713.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:333)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207)
at com.sun.proxy.$Proxy85.setAuthenticatedUser(Unknown Source)
at com.jaspersoft.jasperserver.api.engine.scheduling.quartz.ReportExecutionJob.execute(ReportExecutionJob.java:244)
at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573)
Since laziness won out, I tried changing the owner in the database table `jireportjob` to a different user. This looks fine in the frontend. However, the timer still fails with the error mentioned above.
Oddly enough, I was able to reproduce the error with a new timer by changing the owner. After changing the owner to an active user, the error disappeared.
Do you have any suggestions on how I can avoid having to recreate the timers? Deleting the inactive LDAP user is not possible.
2026-03-15T17:08:33,290 ERROR BatchingBatch,http-nio-8080-exec-4:120 - HHH000315: Exception executing batch [java.sql.BatchUpdateException: Batch entry 0 delete from JIUser where id=731 was aborted: FEHLER: Aktualisieren oder Löschen in Tabelle »jiuser« verletzt Fremdschlüssel-Constraint »fk7caj87u72rymu6805gtek03y8« von Tabelle »jiaccessevent«
Detail: Auf Schlüssel (id)=(731) wird noch aus Tabelle »jiaccessevent« verwiesen. Call getNextException to see other errors in the batch.], SQL: delete from JIUser where id=?
2026-03-15T17:08:33,291 ERROR SqlExceptionHelper,http-nio-8080-exec-4:131 - Batch entry 0 delete from JIUser where id=731 was aborted: FEHLER: Aktualisieren oder Löschen in Tabelle »jiuser« verletzt Fremdschlüssel-Constraint »fk7caj87u72rymu6805gtek03y8« von Tabelle »jiaccessevent«
Detail: Auf Schlüssel (id)=(731) wird noch aus Tabelle »jiaccessevent« verwiesen. Call getNextException to see other errors in the batch.
2026-03-15T17:08:33,291 ERROR SqlExceptionHelper,http-nio-8080-exec-4:131 - FEHLER: Aktualisieren oder Löschen in Tabelle »jiuser« verletzt Fremdschlüssel-Constraint »fk7caj87u72rymu6805gtek03y8« von Tabelle »jiaccessevent«
Detail: Auf Schlüssel (id)=(731) wird noch aus Tabelle »jiaccessevent« verwiesen.
2026-03-15T17:08:33,294 ERROR ExceptionMapperStandardImpl,http-nio-8080-exec-4:39 - HHH000346: Error during managed flush [org.hibernate.exception.ConstraintViolationException: could not execute batch]
2026-03-15T17:08:33,297 ERROR SecureExceptionHandlerImpl,http-nio-8080-exec-4:116 - Auf dem Server ist ein Fehler aufgetreten. Versuchen Sie es erneut, oder wenden Sie sich an die Siteadministratoren. (Fehler-UID: 4b9084ab-f9c3-4b01-b812-f3f30ec97bee)
Quote from jasperman on 9. April 2026, 22:07Indeed, this has already been well documented and described in the Jasperreports Community Forum:
Because JasperReports Server lacks a built-in feature to transfer scheduled jobs, ownership changes must be manually executed by updating the repository database, requiring users to identify the Job ID and the new owner's User ID. A database update to the
jireportjobtable is required, and users are advised to back up the database before proceeding.Pls. find a detailed instruction what to do here:
As you have a Jasperserver Community Edition, simply leave out the parts with "tenantID".
I tested it and it works well.
Indeed, this has already been well documented and described in the Jasperreports Community Forum:
Because JasperReports Server lacks a built-in feature to transfer scheduled jobs, ownership changes must be manually executed by updating the repository database, requiring users to identify the Job ID and the new owner's User ID. A database update to the jireportjob table is required, and users are advised to back up the database before proceeding.
Pls. find a detailed instruction what to do here:
As you have a Jasperserver Community Edition, simply leave out the parts with "tenantID".
I tested it and it works well.
