Hi All,
I have an OAM-OIM 12c integrated environment.
When the user is requesting for secondary entitlement from:
Identity Manager >> Self-Service >> Request Access
a request is raised which goes to a higher authority for approval. A tracking Id/request number is generated for the corresponding request which can be tracked from:
Identity Manager >> Self-Service >> Track Requests
After the request is approved, the user is granted the secondary entitlement and it is also provisioned in the target application. Also on opening the request, in Approval Details the outcome is shown as:
APPROVED (Figure 1). Everything goes fine till here.
But, in Track Request section in Identity Manager, the request status is shown as Request Failed(Figure 2).
In database :
Query: select REQUEST_ID, REQUEST_KEY, REQUEST_STATUS, REQUEST_FAILURE_REASON from REQUEST where REQUEST_ID = 375050;
Output : REQUEST_STATUS : Request Failed
REQUEST\_FAILURE\_REASON : String index out of range: -1
In OIM-Diagnostic logs, the error is shown as below and Figure 3:
[2020-07-04T01:20:23.686+05:30] [oim_server1] [ERROR] [IAM-0089999] [oracle.iam.platform.kernel.impl] [tid: [ACTIVE].ExecuteThread: '40' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: oiminternal] [ecid: 005eOuku4bJ56i05nzs1yZ0000kK0000mN,1:21209:11:4] [APP: oim] [partition-name: DOMAIN] [tenant-name: GLOBAL] [oracle.soa.tracking.FlowId: 2140063] [oracle.soa.tracking.InstanceId: 2260610] [oracle.soa.tracking.SCAEntityId: 1380038] [FlowId: 0000NCMCMyk56i05nzp2iZ1UzikH000013] Kernel Information: {0}[[
oracle.iam.platform.kernel.EventFailedException: Error occured while executing Id 9 name ProvisionLDAPEntitlementPostProcessHandler
_at oracle.iam.platform.kernel.impl.OIMEvent.execute(OIMEvent.java:174)_
_at oracle.iam.platform.kernel.impl.ProcessImpl.executeStage(ProcessImpl.java:223)_
_at oracle.iam.platform.kernel.impl.OIMProcess.doStageExecution(OIMProcess.java:65)_
_at oracle.iam.platform.kernel.impl.ProcessImpl.execute(ProcessImpl.java:182)_
_at oracle.iam.platform.kernel.impl.MonitoredOIMProcess.execute(MonitoredOIMProcess.java:33)_
_at oracle.iam.platform.kernel.impl.Utils.manageSyncProcessing(Utils.java:73)_
_at oracle.iam.platform.kernel.impl.OrchestrationAsyncTask$2.execute(OrchestrationAsyncTask.java:101)_
_at oracle.iam.platform.kernel.impl.Utils.executeInContext(Utils.java:60)_
_at oracle.iam.platform.kernel.impl.Utils.executeInContext(Utils.java:46)_
_at oracle.iam.platform.kernel.impl.OrchestrationAsyncTask.executeInOrchContext(OrchestrationAsyncTask.java:97)_
_at oracle.iam.platform.kernel.impl.OrchestrationAsyncTask.execute(OrchestrationAsyncTask.java:74)_
_at oracle.iam.platform.async.impl.TaskExecutor.executeUnmanagedTask(TaskExecutor.java:100)_
_at oracle.iam.platform.async.impl.TaskExecutor.execute(TaskExecutor.java:70)_
_at oracle.iam.platform.async.messaging.MessageReceiver.onMessage(MessageReceiver.java:68)_
_at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:438)_
_at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:361)_
_at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:297)_
_at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:5107)_
_at weblogic.jms.client.JMSSession.execute(JMSSession.java:4775)_
_at weblogic.jms.client.JMSSession.executeMessage(JMSSession.java:4170)_
_at weblogic.jms.client.JMSSession.access$000(JMSSession.java:127)_
_at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:5627)_
_at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:670)_
_at weblogic.invocation.ComponentInvocationContextManager.\_runAs(ComponentInvocationContextManager.java:352)_
_at weblogic.invocation.ComponentInvocationContextManager.runAs(ComponentInvocationContextManager.java:337)_
_at weblogic.work.LivePartitionUtility.doRunWorkUnderContext(LivePartitionUtility.java:57)_
_at weblogic.work.PartitionUtility.runWorkUnderContext(PartitionUtility.java:41)_
_at weblogic.work.SelfTuningWorkManagerImpl.runWorkUnderContext(SelfTuningWorkManagerImpl.java:644)_
_at weblogic.work.ExecuteThread.execute(ExecuteThread.java:415)_
_at weblogic.work.ExecuteThread.run(ExecuteThread.java:355)_
Caused by: java.lang.StringIndexOutOfBoundsException: String index out of range: -1
_at java.lang.String.substring(String.java:1967)_
_at oracle.iam.ssointg.util.SSOIntegrationUtil.parseEntitlementName(SSOIntegrationUtil.java:513)_
_at oracle.iam.ssointg.impl.handlers.entitlement.ProvisionLDAPEntitlementPostProcessHandler.execute(ProvisionLDAPEntitlementPostProcessHandler.java:109)_
_at oracle.iam.platform.kernel.impl.OIMEvent.executeHandlers(OIMEvent.java:224)_
_at oracle.iam.platform.kernel.impl.MonitoredOIMEvent.invokeExecuteHandler(MonitoredOIMEvent.java:99)_
_at oracle.iam.platform.kernel.impl.MonitoredOIMEvent.executeHandlers(MonitoredOIMEvent.java:69)_
_at oracle.iam.platform.kernel.impl.OIMEvent.execute(OIMEvent.java:157)_
_... 29 more_
]]
Figure 1
Figure 2
Figure 3.
Please suggest.
Thanks in advance.