Content
Updated by Lubomir Marton 4 months ago
If the extension tag does not exist in the XML user definition, midpoint throws this exception: Unknown compile time class of container value of 'extension'.
The error also occurs when editing an object used in RAW mode. mode.
It seems to be an empty contajner <extension/> in the XML object definition in some cases. This is different behavior from previous versions.
**Here is the fragment of midpoint.log:**
2024-11-22 13:24:54,144 \[\] \[pool-3-thread-12\] ERROR (com.evolveum.midpoint.gui.impl.page.admin.ProgressAwareChangesExecutorImpl): Error executing changes.
com.evolveum.midpoint.util.exception.SystemException: Unknown compile time class of container value of 'extension'.
at com.evolveum.midpoint.prism.impl.PrismContainerValueImpl.asContainerableInternal(PrismContainerValueImpl.java:288)
at com.evolveum.midpoint.prism.impl.PrismContainerValueImpl.asContainerable(PrismContainerValueImpl.java:224)
at com.evolveum.midpoint.prism.impl.PrismContainerValueImpl.getRealValue(PrismContainerValueImpl.java:1722)
at com.evolveum.midpoint.repo.sqale.delta.item.ItemDeltaSingleValueProcessor.getAnyValue(ItemDeltaSingleValueProcessor.java:56)
at com.evolveum.midpoint.repo.sqale.delta.item.ItemDeltaSingleValueProcessor.process(ItemDeltaSingleValueProcessor.java:36)
at com.evolveum.midpoint.repo.sqale.delta.DelegatingItemDeltaProcessor.process(DelegatingItemDeltaProcessor.java:58)
at com.evolveum.midpoint.repo.sqale.update.RootUpdateContext.processModification(RootUpdateContext.java:136)
at com.evolveum.midpoint.repo.sqale.update.RootUpdateContext.execute(RootUpdateContext.java:109)
at com.evolveum.midpoint.repo.sqale.update.RootUpdateContext.execute(RootUpdateContext.java:86)
at com.evolveum.midpoint.repo.sqale.SqaleRepositoryService.modifyObjectInternal(SqaleRepositoryService.java:671)
at com.evolveum.midpoint.repo.sqale.SqaleRepositoryService.lambda$executeModifyObject$10(SqaleRepositoryService.java:524)
at com.evolveum.midpoint.repo.sqale.SqaleRepositoryService.executeRetriable(SqaleRepositoryService.java:2581)
at com.evolveum.midpoint.repo.sqale.SqaleRepositoryService.executeModifyObject(SqaleRepositoryService.java:519)
at com.evolveum.midpoint.repo.sqale.SqaleRepositoryService.modifyObject(SqaleRepositoryService.java:496)
at com.evolveum.midpoint.repo.cache.handlers.ModificationOpHandler.modifyObject(ModificationOpHandler.java:135)
at com.evolveum.midpoint.repo.cache.RepositoryCache.modifyObject(RepositoryCache.java:215)
at com.evolveum.midpoint.model.impl.lens.executor.DeltaExecution.executeRealModification(DeltaExecution.java:709)
at com.evolveum.midpoint.model.impl.lens.executor.DeltaExecution.executeModification(DeltaExecution.java:644)
at com.evolveum.midpoint.model.impl.lens.executor.DeltaExecution.execute(DeltaExecution.java:197)
at com.evolveum.midpoint.model.impl.lens.executor.FocusChangeExecution.executeDeltaWithConflictResolution(FocusChangeExecution.java:250)
at com.evolveum.midpoint.model.impl.lens.executor.FocusChangeExecution.execute(FocusChangeExecution.java:103)
at com.evolveum.midpoint.model.impl.lens.ChangeExecutor.executeFocusChanges(ChangeExecutor.java:72)
at com.evolveum.midpoint.model.impl.lens.ChangeExecutor.executeChanges(ChangeExecutor.java:50)
at com.evolveum.midpoint.model.impl.lens.ClockworkClick.lambda$processSecondary$0(ClockworkClick.java:231)
at com.evolveum.midpoint.model.impl.lens.ClockworkMedic.partialExecute(ClockworkMedic.java:350)
at com.evolveum.midpoint.model.impl.lens.ClockworkClick.processSecondary(ClockworkClick.java:230)
at com.evolveum.midpoint.model.impl.lens.ClockworkClick.moveStateForward(ClockworkClick.java:199)
at com.evolveum.midpoint.model.impl.lens.ClockworkClick.click(ClockworkClick.java:121)
at com.evolveum.midpoint.model.impl.lens.Clockwork.click(Clockwork.java:381)
at com.evolveum.midpoint.model.impl.lens.Clockwork.runWithConflictDetection(Clockwork.java:147)
at com.evolveum.midpoint.model.impl.lens.Clockwork.run(Clockwork.java:99)
at com.evolveum.midpoint.model.impl.controller.ModelController.executeChangesNonRaw(ModelController.java:363)
at com.evolveum.midpoint.model.impl.controller.ModelController.executeChanges(ModelController.java:317)
at com.evolveum.midpoint.gui.impl.page.admin.ProgressAwareChangesExecutorImpl$1.callWithContextPrepared(ProgressAwareChangesExecutorImpl.java:152)
at com.evolveum.midpoint.gui.impl.page.admin.ProgressAwareChangesExecutorImpl$1.callWithContextPrepared(ProgressAwareChangesExecutorImpl.java:137)
at com.evolveum.midpoint.web.component.SecurityContextAwareCallable.call(SecurityContextAwareCallable.java:50)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:840)
The error also occurs when editing an object used in RAW mode.
It seems to be an empty contajner <extension/> in the XML object definition in some cases. This is different behavior from previous versions.
**Here is the fragment of midpoint.log:**
2024-11-22 13:24:54,144 \[\] \[pool-3-thread-12\] ERROR (com.evolveum.midpoint.gui.impl.page.admin.ProgressAwareChangesExecutorImpl): Error executing changes.
com.evolveum.midpoint.util.exception.SystemException: Unknown compile time class of container value of 'extension'.
at com.evolveum.midpoint.prism.impl.PrismContainerValueImpl.asContainerableInternal(PrismContainerValueImpl.java:288)
at com.evolveum.midpoint.prism.impl.PrismContainerValueImpl.asContainerable(PrismContainerValueImpl.java:224)
at com.evolveum.midpoint.prism.impl.PrismContainerValueImpl.getRealValue(PrismContainerValueImpl.java:1722)
at com.evolveum.midpoint.repo.sqale.delta.item.ItemDeltaSingleValueProcessor.getAnyValue(ItemDeltaSingleValueProcessor.java:56)
at com.evolveum.midpoint.repo.sqale.delta.item.ItemDeltaSingleValueProcessor.process(ItemDeltaSingleValueProcessor.java:36)
at com.evolveum.midpoint.repo.sqale.delta.DelegatingItemDeltaProcessor.process(DelegatingItemDeltaProcessor.java:58)
at com.evolveum.midpoint.repo.sqale.update.RootUpdateContext.processModification(RootUpdateContext.java:136)
at com.evolveum.midpoint.repo.sqale.update.RootUpdateContext.execute(RootUpdateContext.java:109)
at com.evolveum.midpoint.repo.sqale.update.RootUpdateContext.execute(RootUpdateContext.java:86)
at com.evolveum.midpoint.repo.sqale.SqaleRepositoryService.modifyObjectInternal(SqaleRepositoryService.java:671)
at com.evolveum.midpoint.repo.sqale.SqaleRepositoryService.lambda$executeModifyObject$10(SqaleRepositoryService.java:524)
at com.evolveum.midpoint.repo.sqale.SqaleRepositoryService.executeRetriable(SqaleRepositoryService.java:2581)
at com.evolveum.midpoint.repo.sqale.SqaleRepositoryService.executeModifyObject(SqaleRepositoryService.java:519)
at com.evolveum.midpoint.repo.sqale.SqaleRepositoryService.modifyObject(SqaleRepositoryService.java:496)
at com.evolveum.midpoint.repo.cache.handlers.ModificationOpHandler.modifyObject(ModificationOpHandler.java:135)
at com.evolveum.midpoint.repo.cache.RepositoryCache.modifyObject(RepositoryCache.java:215)
at com.evolveum.midpoint.model.impl.lens.executor.DeltaExecution.executeRealModification(DeltaExecution.java:709)
at com.evolveum.midpoint.model.impl.lens.executor.DeltaExecution.executeModification(DeltaExecution.java:644)
at com.evolveum.midpoint.model.impl.lens.executor.DeltaExecution.execute(DeltaExecution.java:197)
at com.evolveum.midpoint.model.impl.lens.executor.FocusChangeExecution.executeDeltaWithConflictResolution(FocusChangeExecution.java:250)
at com.evolveum.midpoint.model.impl.lens.executor.FocusChangeExecution.execute(FocusChangeExecution.java:103)
at com.evolveum.midpoint.model.impl.lens.ChangeExecutor.executeFocusChanges(ChangeExecutor.java:72)
at com.evolveum.midpoint.model.impl.lens.ChangeExecutor.executeChanges(ChangeExecutor.java:50)
at com.evolveum.midpoint.model.impl.lens.ClockworkClick.lambda$processSecondary$0(ClockworkClick.java:231)
at com.evolveum.midpoint.model.impl.lens.ClockworkMedic.partialExecute(ClockworkMedic.java:350)
at com.evolveum.midpoint.model.impl.lens.ClockworkClick.processSecondary(ClockworkClick.java:230)
at com.evolveum.midpoint.model.impl.lens.ClockworkClick.moveStateForward(ClockworkClick.java:199)
at com.evolveum.midpoint.model.impl.lens.ClockworkClick.click(ClockworkClick.java:121)
at com.evolveum.midpoint.model.impl.lens.Clockwork.click(Clockwork.java:381)
at com.evolveum.midpoint.model.impl.lens.Clockwork.runWithConflictDetection(Clockwork.java:147)
at com.evolveum.midpoint.model.impl.lens.Clockwork.run(Clockwork.java:99)
at com.evolveum.midpoint.model.impl.controller.ModelController.executeChangesNonRaw(ModelController.java:363)
at com.evolveum.midpoint.model.impl.controller.ModelController.executeChanges(ModelController.java:317)
at com.evolveum.midpoint.gui.impl.page.admin.ProgressAwareChangesExecutorImpl$1.callWithContextPrepared(ProgressAwareChangesExecutorImpl.java:152)
at com.evolveum.midpoint.gui.impl.page.admin.ProgressAwareChangesExecutorImpl$1.callWithContextPrepared(ProgressAwareChangesExecutorImpl.java:137)
at com.evolveum.midpoint.web.component.SecurityContextAwareCallable.call(SecurityContextAwareCallable.java:50)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:840)