An unexpected error occurred: failed to lazily initialize a collection of role: sailpoint.object.Identity.bundles, could not initialize proxy - no Session

Which IIQ version are you inquiring about?

SailPoint IIQ 8.5

Please share any images or screenshots, if relevant.

An unexpected error occurred: failed to lazily initialize a collection of role: sailpoint.object.Identity.bundles, could not initialize proxy - no Session

Please share any other relevant files that may be required (for example, logs).

This is part of ITSM β†’ SailPoint Integration flow where we have run rule task configured: which is triggering a rule and then rule will build the plan and launch the workflow LCM Provisioning with following parameters then finally updating the WO status based on Provisioning Result: committed.

parameter in the LCM Provisioning step:
foregroundProvisioning: false
noTriggers: true
doRefresh: false
optimisticProvisioning: true

all the functionality working as expected but I have the following error in the task result of subsequent run task.

Observation:
in the 1st instance it is working fine as shown below but in the subsequent task run it is failing with error.

1st instance no errors in the task result:

in the subsequent run task is fail with below error:

Share all details about your problem, including any error messages you may have received.

2026-06-19T12:18:49,351 ERROR https-openssl-nio-443-exec-6 sailpoint.server.ScriptletEvaluator:144 - org.hibernate.LazyInitializationException: failed to lazily initialize a collection of role: sailpoint.object.Identity.bundles, could not initialize proxy - no Session
	at org.hibernate.collection.internal.AbstractPersistentCollection.throwLazyInitializationException(AbstractPersistentCollection.java:612)
	at org.hibernate.collection.internal.AbstractPersistentCollection.withTemporarySessionIfNeeded(AbstractPersistentCollection.java:218)
	at org.hibernate.collection.internal.AbstractPersistentCollection.initialize(AbstractPersistentCollection.java:591)
	at org.hibernate.collection.internal.AbstractPersistentCollection.read(AbstractPersistentCollection.java:149)
	at org.hibernate.collection.internal.PersistentList.iterator(PersistentList.java:155)
	at sailpoint.object.Identity.loadForProvisioning(Identity.java:848)
	at sailpoint.provisioning.IIQEvaluator.provision(IIQEvaluator.java:305)
	at sailpoint.provisioning.PlanEvaluator.execute(PlanEvaluator.java:880)
	at sailpoint.provisioning.PlanEvaluator.execute(PlanEvaluator.java:741)
	at sailpoint.api.Provisioner.execute(Provisioner.java:1732)
	at sailpoint.workflow.IdentityLibrary.provisionProject(IdentityLibrary.java:3264)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
	at sailpoint.server.ScriptletEvaluator.doCall(ScriptletEvaluator.java:134)
	at sailpoint.server.ScriptletEvaluator.evalSource(ScriptletEvaluator.java:63)
	at sailpoint.api.Workflower.evalSource(Workflower.java:6041)
	at sailpoint.api.Workflower.advanceStep(Workflower.java:5280)
	at sailpoint.api.Workflower.advance(Workflower.java:4667)
	at sailpoint.api.Workflower.startCase(Workflower.java:3253)
	at sailpoint.api.Workflower.launchSubcase(Workflower.java:5583)
	at sailpoint.api.Workflower.launchSubcases(Workflower.java:5476)
	at sailpoint.api.Workflower.advanceStep(Workflower.java:5267)
	at sailpoint.api.Workflower.advance(Workflower.java:4667)
	at sailpoint.api.Workflower.startCase(Workflower.java:3253)
	at sailpoint.api.Workflower.launchSubcase(Workflower.java:5583)
	at sailpoint.api.Workflower.launchSubcases(Workflower.java:5476)
	at sailpoint.api.Workflower.advanceStep(Workflower.java:5267)
	at sailpoint.api.Workflower.advance(Workflower.java:4667)
	at sailpoint.api.Workflower.startCase(Workflower.java:3253)
	at sailpoint.api.Workflower.launchSubcase(Workflower.java:5583)
	at sailpoint.api.Workflower.launchSubcases(Workflower.java:5476)
	at sailpoint.api.Workflower.advanceStep(Workflower.java:5267)
	at sailpoint.api.Workflower.advance(Workflower.java:4667)
	at sailpoint.api.Workflower.advanceSubcase(Workflower.java:5607)
	at sailpoint.api.Workflower.advanceStep(Workflower.java:5200)
	at sailpoint.api.Workflower.advance(Workflower.java:4667)
	at sailpoint.api.Workflower.assimilate(Workflower.java:4317)
	at sailpoint.api.Workflower.handleWorkItem(Workflower.java:7755)
	at sailpoint.api.Workflower.process(Workflower.java:1962)
	at sailpoint.api.Workflower.process(Workflower.java:1986)
	at sailpoint.api.WorkflowSession.advance(WorkflowSession.java:468)
	at sailpoint.service.WorkflowSessionService.advance(WorkflowSessionService.java:105)
	at sailpoint.service.form.FormService.next(FormService.java:201)
	at sailpoint.service.form.FormService.submit(FormService.java:123)
	at sailpoint.rest.ui.form.BaseFormResource.submitOrValidate(BaseFormResource.java:162)
	at sailpoint.rest.ui.form.BaseFormResource.submit(BaseFormResource.java:122)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.base/java.lang.reflect.Method.invoke(Method.java:568)
	at org.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory.lambda$static$0(ResourceMethodInvocationHandlerFactory.java:52)
	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:124)
	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:167)
	at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:176)
	at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:79)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:475)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:397)
	at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:81)
	at org.glassfish.jersey.server.ServerRuntime$1.run(ServerRuntime.java:255)
	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:248)
	at org.glassfish.jersey.internal.Errors$1.call(Errors.java:244)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:292)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:274)
	at org.glassfish.jersey.internal.Errors.process(Errors.java:244)
	at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:265)
	at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:234)
	at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:684)
	at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:394)
	at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:346)
	at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:366)
	at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:319)
	at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:205)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:199)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
	at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
	at sailpoint.web.SailPointResponseFilter.doFilter(SailPointResponseFilter.java:88)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
	at sailpoint.rest.jaxrs.MethodOverrideFilter.doFilter(MethodOverrideFilter.java:90)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
	at sailpoint.rest.RestCsrfValidationFilter.doFilter(RestCsrfValidationFilter.java:71)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
	at sailpoint.rest.AuthenticationFilter.doFilter(AuthenticationFilter.java:109)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
	at sailpoint.web.TraversalVulnerabilityFilter.doFilter(TraversalVulnerabilityFilter.java:69)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
	at sailpoint.web.EntraProxyTeamsHeaderFilter.doFilter(EntraProxyTeamsHeaderFilter.java:105)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
	at sailpoint.web.SailPointContextRequestFilter.doFilter(SailPointContextRequestFilter.java:68)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
	at sailpoint.web.SailPointPollingRequestFilter.doFilter(SailPointPollingRequestFilter.java:158)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
	at sailpoint.web.ResponseHeaderFilter.doFilter(ResponseHeaderFilter.java:63)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
	at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
	at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:168)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:144)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:168)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90)
	at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:130)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93)
	at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:656)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:346)
	at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:397)
	at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63)
	at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:935)
	at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1833)
	at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52)
	at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:975)
	at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:493)
	at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63)
	at java.base/java.lang.Thread.run(Thread.java:842)

2026-06-19T12:18:49,351 DEBUG https-openssl-nio-443-exec-6 sailpoint.tools.Internationalizer:230 - Couldn't find message for key 'failed to lazily initialize a collection of role: sailpoint.object.Identity.bundles, could not initialize proxy - no Session'

I have tried following:

  1. restarted the tomcat server
  2. Cleared the cache

The Identity object is being carried across Hibernate sessions β€” it’s loaded in the first workflow run, serialized into the WorkflowCase, and when the second run attempts to access Identity.bundles (a lazy-loaded collection), the original session is gone.

The stack confirms it: Identity.loadForProvisioning() β†’ IIQEvaluator.provision() tries to iterate bundles on a detached entity.

Fix β€” Re-fetch the Identity by name inside the rule before building the plan.

Wherever your rule retrieves the Identity object (likely from workflow variables or passed-in parameters), replace the stale reference with a fresh context.getObjectByName() fetch:

// Instead of using identity passed via workflow variable (detached one)
Identity identity = (Identity) wfc.get("identity"); // ← stale after 1st run

// Do this:
String identityName = (String) wfc.get("identityName"); // store name, not object
Identity identity = context.getObjectByName(Identity.class, identityName);

If the plan itself holds a reference to the Identity object (e.g., plan.setIdentity(identity)), ensure it’s set from the freshly fetched instance, not from anything deserialized out of the WorkflowCase.

Hi @naveenkumar3
Greetings!
Thanks for the response. I will test this and get back to you with the results. If it resolves the issue, I will mark your comment as the solution.

Thanks & Regards,
Pattabhi