Regarding OIM process tasks

Hi Guys,
I am pretty new to OIM. I have installed AD connector and i am able to provision the user to AD. I have observed that Create AD User process definition has almost 25 process tasks. When i observed the tasks that are called after provisioning of user to AD i found that only four tasks are getting called. What about the rest of the tasks when they are called. Is there any way that we can know when these tasks will be called under what situation.
What i want to know is there are mapping which specifies for which action which task to be called. Like for example if change password action is triggered Change Password process task is triggered. So which means there should be some where this mapping may stored which i want to know.
Like i create a new process task and i want to call it when particular action is triggered.
Any body help me in understanding this please.......

Hi,
Process tasks work the same in all processes, regardless of the adapter. This was designed on purpose so that a level of abstraction can be made between the technical details of connecting/acting on a target and the business process.
So, in a nutshell, there are different kinds of tasks:
1) Non-conditional -- these are tasks that run at the start of any process. To define order on these tasks, you must use the Task Dependency tab
2) Disable/Enable tasks -- these are tasks whose Task Effect is either disable or enable. These tasks run whenever the OIM user is disabled or enabled, or when it is done manually. Same thing about order.
3) Undo Tasks -- these are tasks that run when a particular task is undone. They typically run on a revoke, which runs all the undo tasks on the non-conditional tasks
4) OIM/ACT/etc Triggers -- these are typically in the form "Change <attribute>" but they can be anything and are defined in the trigger lookups. They run whenever an attribute on the OIM user changes and that task exists in the process definition
5) Form triggers -- they are in the form: "<Attribute name> Updated" This is hard coded and the attribute name must be the form description name (like "First Name", not UD_ADUSER_FIRSTNAME). These run whenever the process form gets updated for a particular field. They do not run on reconciliations
6) Reconciliation tasks -- these tasks are run whenever a reconciliation event is processed and are defined in the Task Generated tab on the task definition.
7) Attestation -- just like Reconciliation
To see these visually, I suggest hitting the Render Workflow button... OIM separates each of these out for you in the tabs in that screen.
Cheers,
Deborah

Similar Messages

  • OIM Process tasks Query

    Just wondering how the process tasks are related to the process form fields. E.g. where can I map that if the first name on process form is modified, OIM should trigger the 'First Name Changed' process task. I know about USR_PROCESS_TRIGGERS, but I am talking about the task which is mapped to the connector and is responsible for updating data in target application.
    Thanks

    if the first name on process form is modifiedIt triggers First Name Updated. It's architecture of OIM that it triggers 'Label Updated' task when you update Process Form. May be some event handlers are attached. Not sure 100% as didn't search for this.

  • Executing OIM Process task based on Condition

    Hi Experts ,
    I have the following requirement :
    when a OIM user field - X is updated with a value A i have to call task T1, generate a random number on this task and have to trigger CREATE user Task within in the same process definition of an IT resource
    when the same OIM user field - X is updated with a value B i have to call task T1 again, generate a random number on this task and have to trigger DISABLE user Task.
    Im taking the approach of OIM lookup triggers which will kickoff the task T1 when user field X is updated
    My question is how can i add the conditional logic to a task(T1) to trigger the only one dependent task, either create user or disable user when a condition satisfies.
    currently i have added create user task and disable task as the dependent tasks of the task T1.
    If i am triggering create user task how can i get all the attribute mapping values of createuserAdp. since few are referring the process form, userdata and IT resource
    Im confused and not sure as how to implement such Work flow based on conditions. hope some one can help me!!
    Thanks in advance
    Edited by: user8942439 on Aug 24, 2012 11:58 PM

    Use the responses returned by task T1. Lets say for create user, Task T1 returns a response "CREATE". So in the responses tab add this response, select it and in the tasks to generate section add "Create user" task to this response. In the same way task T1 returns response "DISABLE", so on DISABLE response select task to generate Disable user.
    regards,
    GP

  • Is it possible to switch the security context while in a process task?

    I have a process task which needs to perform some tasks that require a higher level of permissions than the current user has. So, I am looking for a way to switch to another security context using the credentials of another user account, like xelsysadm, and then using the OIMClient class, perform a logon as that other user and then call the necessary oimClient.getService(class) methods as needed.
    My first problem is where do I store these other credentials? I was hoping to use the Security Credentials MAP as set up in the Enterprise Manager console and access this map using the oracle.security.jps series of classes. However, I am getting access denied when I try to access the Credentials Map.
    Here is the code snippet I am using:
    JpsContext ctx = JpsContextFactory.getContextFactory().getContext();
    CredentialStore cs = ctx.getServiceInstance(CredentialStore.class);
    CredentialMap cmap = cs.getCredentialMap("oracle.oim.sysadminMap"); // This statement throws an Access Denied exception
    Credential cred = cmap.getCredential("sysadmin");
    // Ensure the credential is a Password credential
    if (cred instanceof PasswordCredential) {               
    PasswordCredential pcred = (PasswordCredential) cred;
    rawPwd = pcred.getPassword();
    password = new String(rawPwd);
    userName = pcred.getName();
    Am I doing something wrong here or is what I am trying to do not allowed from within a Resource Object's process task?
    Thank you for any suggestions.
    -Dave Herrmann
    Edited by: user552098 on Jul 3, 2012 2:50 PM

    Bikash,
    Our Oracle Consultants have told me that I should not make a call to OIMClient.logon() from within an OIM process task. They say that on the server side I should only call Platform.getService() not OIMClient.getService() so I guess I won't be needing any userid/pwds to be stored in the Security Credential Map store.
    But then that begs the question: How do I make a security context switch from within a process task java method if I cannot use OIMClient? Is there a way to impersonate another user using OIM APIs?
    Any ideas on how to do this?
    Thank you for any help.
    -Dave

  • Error in creating a process task adapter in OIM

    Hi All,
    I am trying to create a process task adapter(Java Task) in OIM 11.1.1.5.
    The code tries to fetch the values of a process form using a lookup and store it in a hashmap. So have done import for Thor.Api.* and com.thortech.xl.dataaccess.tcDataProvider in the code. The jar for the code is uploaded in MDS and saved in JavaTask folder.
    Whlie creating the the adapter Task, after selecting the API source as my jar file, when i selecting the Application API, i am getting the following error.
    SEVERE: Class/Method: tcADPClient/introspect encounter some problems: EJB Exception: ; nested exception is:
    java.lang.NoClassDefFoundError: com/thortech/xl/dataaccess/tcDataProvider; nested exception is: java.rmi.RemoteException: EJB Exception: ; nested exception is:
    java.lang.NoClassDefFoundError: com/thortech/xl/dataaccess/tcDataProvider
    javax.ejb.EJBException: EJB Exception: ; nested exception is:
    java.lang.NoClassDefFoundError: com/thortech/xl/dataaccess/tcDataProvider; nested exception is: java.rmi.RemoteException: EJB Exception: ; nested exception is:
    java.lang.NoClassDefFoundError: com/thortech/xl/dataaccess/tcDataProvider
    java.rmi.RemoteException: EJB Exception: ; nested exception is:
    java.lang.NoClassDefFoundError: com/thortech/xl/dataaccess/tcDataProvider
    at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:234)
    at weblogic.rmi.internal.BasicRemoteRef.invoke(BasicRemoteRef.java:223)
    at com.thortech.xl.ejb.interfaces.tcADP_3uwi2l_tcADPRemoteImpl_1035_WLStub.introspectAPIx(Unknown Source)
    at sun.reflect.GeneratedMethodAccessor50.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at weblogic.ejb.container.internal.RemoteBusinessIntfProxy.invoke(RemoteBusinessIntfProxy.java:85)
    at $Proxy4.introspectAPIx(Unknown Source)
    at com.thortech.xl.ejb.interfaces.tcADPDelegate.introspectAPI(Unknown Source)
    at sun.reflect.GeneratedMethodAccessor49.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at Thor.API.Base.SecurityInvocationHandler$1.run(SecurityInvocationHandler.java:68)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
    at weblogic.security.Security.runAs(Security.java:41)
    at Thor.API.Security.LoginHandler.weblogicLoginSession.runAs(weblogicLoginSession.java:52)
    at Thor.API.Base.SecurityInvocationHandler.invoke(SecurityInvocationHandler.java:79)
    at $Proxy5.introspectAPI(Unknown Source)
    at com.thortech.xl.client.dataobj.tcADPClient.introspect(tcADPClient.java:113)
    at com.thortech.xl.adapterfactory.forms.tcfrmAdapterTask.setJavaApiLookup(tcfrmAdapterTask.java:433)
    at com.thortech.xl.adapterfactory.forms.tcfrmAdapterTask.access$1200(tcfrmAdapterTask.java:40)
    at com.thortech.xl.adapterfactory.forms.tcfrmAdapterTask$4.actionPerformed(tcfrmAdapterTask.java:683)
    at javax.swing.JComboBox.fireActionEvent(JComboBox.java:1240)
    at javax.swing.JComboBox.setSelectedItem(JComboBox.java:567)
    at javax.swing.JComboBox.setSelectedIndex(JComboBox.java:603)
    at javax.swing.plaf.basic.BasicComboPopup$Handler.mouseReleased(BasicComboPopup.java:840)
    at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:273)
    at java.awt.Component.processMouseEvent(Component.java:6289)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
    at java.awt.Component.processEvent(Component.java:6054)
    at java.awt.Container.processEvent(Container.java:2041)
    at java.awt.Component.dispatchEventImpl(Component.java:4652)
    at java.awt.Container.dispatchEventImpl(Container.java:2099)
    at java.awt.Component.dispatchEvent(Component.java:4482)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
    at java.awt.Container.dispatchEventImpl(Container.java:2085)
    at java.awt.Window.dispatchEventImpl(Window.java:2478)
    at java.awt.Component.dispatchEvent(Component.java:4482)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:644)
    at java.awt.EventQueue.access$000(EventQueue.java:85)
    at java.awt.EventQueue$1.run(EventQueue.java:603)
    at java.awt.EventQueue$1.run(EventQueue.java:601)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
    at java.awt.EventQueue$2.run(EventQueue.java:617)
    at java.awt.EventQueue$2.run(EventQueue.java:615)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:614)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:178)
    at java.awt.Dialog$1.run(Dialog.java:1046)
    at java.awt.Dialog$3.run(Dialog.java:1098)
    at java.awt.Dialog.show(Dialog.java:1096)
    at com.thortech.xl.gui.base.tcDialog.show(tcDialog.java:102)
    at java.awt.Component.show(Component.java:1585)
    at java.awt.Component.setVisible(Component.java:1537)
    at java.awt.Window.setVisible(Window.java:842)
    at java.awt.Dialog.setVisible(Dialog.java:986)
    at com.thortech.xl.gui.base.tcfrmPopup.jbInit(tcfrmPopup.java:199)
    at com.thortech.xl.gui.base.tcfrmPopup.addForm(tcfrmPopup.java:166)
    at com.thortech.xl.adapterfactory.guibase.tcAdapterTaskTree.loadAddForm1(tcAdapterTaskTree.java:1387)
    at com.thortech.xl.adapterfactory.guibase.tcAdapterTaskTree.launchEditorForm(tcAdapterTaskTree.java:1355)
    at com.thortech.xl.adapterfactory.guibase.tcAdapterTaskTree.addAdapterTask(tcAdapterTaskTree.java:555)
    at com.thortech.xl.adapterfactory.guibase.tcAdapterTaskTree.actionPerformed(tcAdapterTaskTree.java:459)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
    at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:272)
    at java.awt.Component.processMouseEvent(Component.java:6289)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
    at java.awt.Component.processEvent(Component.java:6054)
    at java.awt.Container.processEvent(Container.java:2041)
    at java.awt.Component.dispatchEventImpl(Component.java:4652)
    at java.awt.Container.dispatchEventImpl(Container.java:2099)
    at java.awt.Component.dispatchEvent(Component.java:4482)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
    at java.awt.Container.dispatchEventImpl(Container.java:2085)
    at java.awt.Window.dispatchEventImpl(Window.java:2478)
    at java.awt.Component.dispatchEvent(Component.java:4482)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:644)
    at java.awt.EventQueue.access$000(EventQueue.java:85)
    at java.awt.EventQueue$1.run(EventQueue.java:603)
    at java.awt.EventQueue$1.run(EventQueue.java:601)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
    at java.awt.EventQueue$2.run(EventQueue.java:617)
    at java.awt.EventQueue$2.run(EventQueue.java:615)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:614)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
    Caused by: java.lang.NoClassDefFoundError: com/thortech/xl/dataaccess/tcDataProvider
    at java.lang.Class.getDeclaredMethods0(Native Method)
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
    at java.lang.Class.privateGetPublicMethods(Class.java:2547)
    at java.lang.Class.getMethods(Class.java:1410)
    at com.thortech.xl.dataobj.util.tcApplicationLookup.introspect(tcApplicationLookup.java:417)
    at com.thortech.xl.dataobj.tcADP.introspectAPI(tcADP.java:172)
    at com.thortech.xl.ejb.databeansimpl.tcADPBean.introspectAPI(tcADPBean.java:89)
    at com.thortech.xl.ejb.interfaces.tcADPEJB.introspectAPIx(Unknown Source)
    at sun.reflect.GeneratedMethodAccessor589.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at com.bea.core.repackaged.springframework.jee.spi.MethodInvocationVisitorImpl.visit(MethodInvocationVisitorImpl.java:37)
    at weblogic.ejb.container.injection.EnvironmentInterceptorCallbackImpl.callback(EnvironmentInterceptorCallbackImpl.java:54)
    at com.bea.core.repackaged.springframework.jee.spi.EnvironmentInterceptor.invoke(EnvironmentInterceptor.java:50)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    at $Proxy329.introspectAPIx(Unknown Source)
    at com.thortech.xl.ejb.interfaces.tcADP_3uwi2l_tcADPRemoteImpl.__WL_invoke(Unknown Source)
    at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:40)
    at com.thortech.xl.ejb.interfaces.tcADP_3uwi2l_tcADPRemoteImpl.introspectAPIx(Unknown Source)
    at com.thortech.xl.ejb.interfaces.tcADP_3uwi2l_tcADPRemoteImpl_WLSkel.invoke(Unknown Source)
    at weblogic.rmi.internal.activation.ActivatableServerRef.invoke(ActivatableServerRef.java:85)
    at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:522)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:146)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:518)
    at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    javax.ejb.EJBException: EJB Exception: ; nested exception is:
    java.lang.NoClassDefFoundError: com/thortech/xl/dataaccess/tcDataProvider; nested exception is: java.rmi.RemoteException: EJB Exception: ; nested exception is:
    java.lang.NoClassDefFoundError: com/thortech/xl/dataaccess/tcDataProvider
    at weblogic.ejb.container.internal.RemoteBusinessIntfProxy.unwrapRemoteException(RemoteBusinessIntfProxy.java:124)
    at weblogic.ejb.container.internal.RemoteBusinessIntfProxy.invoke(RemoteBusinessIntfProxy.java:96)
    at $Proxy4.introspectAPIx(Unknown Source)
    at com.thortech.xl.ejb.interfaces.tcADPDelegate.introspectAPI(Unknown Source)
    at sun.reflect.GeneratedMethodAccessor49.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at Thor.API.Base.SecurityInvocationHandler$1.run(SecurityInvocationHandler.java:68)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
    at weblogic.security.Security.runAs(Security.java:41)
    at Thor.API.Security.LoginHandler.weblogicLoginSession.runAs(weblogicLoginSession.java:52)
    at Thor.API.Base.SecurityInvocationHandler.invoke(SecurityInvocationHandler.java:79)
    at $Proxy5.introspectAPI(Unknown Source)
    at com.thortech.xl.client.dataobj.tcADPClient.introspect(tcADPClient.java:113)
    at com.thortech.xl.adapterfactory.forms.tcfrmAdapterTask.setJavaApiLookup(tcfrmAdapterTask.java:433)
    at com.thortech.xl.adapterfactory.forms.tcfrmAdapterTask.access$1200(tcfrmAdapterTask.java:40)
    at com.thortech.xl.adapterfactory.forms.tcfrmAdapterTask$4.actionPerformed(tcfrmAdapterTask.java:683)
    at javax.swing.JComboBox.fireActionEvent(JComboBox.java:1240)
    at javax.swing.JComboBox.setSelectedItem(JComboBox.java:567)
    at javax.swing.JComboBox.setSelectedIndex(JComboBox.java:603)
    at javax.swing.plaf.basic.BasicComboPopup$Handler.mouseReleased(BasicComboPopup.java:840)
    at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:273)
    at java.awt.Component.processMouseEvent(Component.java:6289)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
    at java.awt.Component.processEvent(Component.java:6054)
    at java.awt.Container.processEvent(Container.java:2041)
    at java.awt.Component.dispatchEventImpl(Component.java:4652)
    at java.awt.Container.dispatchEventImpl(Container.java:2099)
    at java.awt.Component.dispatchEvent(Component.java:4482)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
    at java.awt.Container.dispatchEventImpl(Container.java:2085)
    at java.awt.Window.dispatchEventImpl(Window.java:2478)
    at java.awt.Component.dispatchEvent(Component.java:4482)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:644)
    at java.awt.EventQueue.access$000(EventQueue.java:85)
    at java.awt.EventQueue$1.run(EventQueue.java:603)
    at java.awt.EventQueue$1.run(EventQueue.java:601)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
    at java.awt.EventQueue$2.run(EventQueue.java:617)
    at java.awt.EventQueue$2.run(EventQueue.java:615)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:614)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:178)
    at java.awt.Dialog$1.run(Dialog.java:1046)
    at java.awt.Dialog$3.run(Dialog.java:1098)
    at java.awt.Dialog.show(Dialog.java:1096)
    at com.thortech.xl.gui.base.tcDialog.show(tcDialog.java:102)
    at java.awt.Component.show(Component.java:1585)
    at java.awt.Component.setVisible(Component.java:1537)
    at java.awt.Window.setVisible(Window.java:842)
    at java.awt.Dialog.setVisible(Dialog.java:986)
    at com.thortech.xl.gui.base.tcfrmPopup.jbInit(tcfrmPopup.java:199)
    at com.thortech.xl.gui.base.tcfrmPopup.addForm(tcfrmPopup.java:166)
    at com.thortech.xl.adapterfactory.guibase.tcAdapterTaskTree.loadAddForm1(tcAdapterTaskTree.java:1387)
    at com.thortech.xl.adapterfactory.guibase.tcAdapterTaskTree.launchEditorForm(tcAdapterTaskTree.java:1355)
    at com.thortech.xl.adapterfactory.guibase.tcAdapterTaskTree.addAdapterTask(tcAdapterTaskTree.java:555)
    at com.thortech.xl.adapterfactory.guibase.tcAdapterTaskTree.actionPerformed(tcAdapterTaskTree.java:459)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
    at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:272)
    at java.awt.Component.processMouseEvent(Component.java:6289)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
    at java.awt.Component.processEvent(Component.java:6054)
    at java.awt.Container.processEvent(Container.java:2041)
    at java.awt.Component.dispatchEventImpl(Component.java:4652)
    at java.awt.Container.dispatchEventImpl(Container.java:2099)
    at java.awt.Component.dispatchEvent(Component.java:4482)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
    at java.awt.Container.dispatchEventImpl(Container.java:2085)
    at java.awt.Window.dispatchEventImpl(Window.java:2478)
    at java.awt.Component.dispatchEvent(Component.java:4482)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:644)
    at java.awt.EventQueue.access$000(EventQueue.java:85)
    at java.awt.EventQueue$1.run(EventQueue.java:603)
    at java.awt.EventQueue$1.run(EventQueue.java:601)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
    at java.awt.EventQueue$2.run(EventQueue.java:617)
    at java.awt.EventQueue$2.run(EventQueue.java:615)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:614)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
    Caused by: java.rmi.RemoteException: EJB Exception: ; nested exception is:
    java.lang.NoClassDefFoundError: com/thortech/xl/dataaccess/tcDataProvider
    at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:234)
    at weblogic.rmi.internal.BasicRemoteRef.invoke(BasicRemoteRef.java:223)
    at com.thortech.xl.ejb.interfaces.tcADP_3uwi2l_tcADPRemoteImpl_1035_WLStub.introspectAPIx(Unknown Source)
    at sun.reflect.GeneratedMethodAccessor50.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at weblogic.ejb.container.internal.RemoteBusinessIntfProxy.invoke(RemoteBusinessIntfProxy.java:85)
    ... 96 more
    Caused by: java.lang.NoClassDefFoundError: com/thortech/xl/dataaccess/tcDataProvider
    at java.lang.Class.getDeclaredMethods0(Native Method)
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2427)
    at java.lang.Class.privateGetPublicMethods(Class.java:2547)
    at java.lang.Class.getMethods(Class.java:1410)
    at com.thortech.xl.dataobj.util.tcApplicationLookup.introspect(tcApplicationLookup.java:417)
    at com.thortech.xl.dataobj.tcADP.introspectAPI(tcADP.java:172)
    at com.thortech.xl.ejb.databeansimpl.tcADPBean.introspectAPI(tcADPBean.java:89)
    at com.thortech.xl.ejb.interfaces.tcADPEJB.introspectAPIx(Unknown Source)
    at sun.reflect.GeneratedMethodAccessor589.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at com.bea.core.repackaged.springframework.jee.spi.MethodInvocationVisitorImpl.visit(MethodInvocationVisitorImpl.java:37)
    at weblogic.ejb.container.injection.EnvironmentInterceptorCallbackImpl.callback(EnvironmentInterceptorCallbackImpl.java:54)
    at com.bea.core.repackaged.springframework.jee.spi.EnvironmentInterceptor.invoke(EnvironmentInterceptor.java:50)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
    at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
    at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
    at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
    at $Proxy329.introspectAPIx(Unknown Source)
    at com.thortech.xl.ejb.interfaces.tcADP_3uwi2l_tcADPRemoteImpl.__WL_invoke(Unknown Source)
    at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:40)
    at com.thortech.xl.ejb.interfaces.tcADP_3uwi2l_tcADPRemoteImpl.introspectAPIx(Unknown Source)
    at com.thortech.xl.ejb.interfaces.tcADP_3uwi2l_tcADPRemoteImpl_WLSkel.invoke(Unknown Source)
    at weblogic.rmi.internal.activation.ActivatableServerRef.invoke(ActivatableServerRef.java:85)
    at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:522)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:146)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:518)
    at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    I am not able to select the Application API and so cant proceed further.
    Request you all to provide some help for the same

    The other error for the same is as follows
    Oct 9, 2012 6:36:21 PM com.thortech.util.logging.Logger error
    SEVERE: Class/Method: tcADPClient/getConstructors encounter some problems: Bean has been deleted.
    javax.ejb.NoSuchEJBException: Bean has been deleted.
    at weblogic.ejb.container.swap.DiskSwap.read(DiskSwap.java:192)
    at weblogic.ejb.container.manager.StatefulSessionManager.getBean(StatefulSessionManager.java:420)
    at weblogic.ejb.container.manager.StatefulSessionManager.preInvoke(StatefulSessionManager.java:492)
    at weblogic.ejb.container.internal.BaseRemoteObject.preInvoke(BaseRemoteObject.java:229)
    at weblogic.ejb.container.internal.StatefulRemoteObject.__WL_preInvoke(StatefulRemoteObject.java:57)
    at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:24)
    at com.thortech.xl.ejb.interfaces.tcADP_3uwi2l_tcADPRemoteImpl.getConstructorsx(Unknown Source)
    at com.thortech.xl.ejb.interfaces.tcADP_3uwi2l_tcADPRemoteImpl_WLSkel.invoke(Unknown Source)
    at weblogic.rmi.internal.activation.ActivatableServerRef.invoke(ActivatableServerRef.java:85)
    at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:522)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:146)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:518)
    at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    java.lang.NullPointerException
    at com.thortech.xl.adapterfactory.forms.tcfrmAdapterTask.setJavaApiLookup(tcfrmAdapterTask.java:447)
    at com.thortech.xl.adapterfactory.forms.tcfrmAdapterTask.access$1200(tcfrmAdapterTask.java:40)
    at com.thortech.xl.adapterfactory.forms.tcfrmAdapterTask$4.actionPerformed(tcfrmAdapterTask.java:683)
    at javax.swing.JComboBox.fireActionEvent(JComboBox.java:1240)
    at javax.swing.JComboBox.setSelectedItem(JComboBox.java:567)
    at javax.swing.JComboBox.setSelectedIndex(JComboBox.java:603)
    at javax.swing.plaf.basic.BasicComboPopup$Handler.mouseReleased(BasicComboPopup.java:840)
    at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:273)
    at java.awt.Component.processMouseEvent(Component.java:6289)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
    at java.awt.Component.processEvent(Component.java:6054)
    at java.awt.Container.processEvent(Container.java:2041)
    at java.awt.Component.dispatchEventImpl(Component.java:4652)
    at java.awt.Container.dispatchEventImpl(Container.java:2099)
    at java.awt.Component.dispatchEvent(Component.java:4482)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
    at java.awt.Container.dispatchEventImpl(Container.java:2085)
    at java.awt.Window.dispatchEventImpl(Window.java:2478)
    at java.awt.Component.dispatchEvent(Component.java:4482)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:644)
    at java.awt.EventQueue.access$000(EventQueue.java:85)
    at java.awt.EventQueue$1.run(EventQueue.java:603)
    at java.awt.EventQueue$1.run(EventQueue.java:601)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
    at java.awt.EventQueue$2.run(EventQueue.java:617)
    at java.awt.EventQueue$2.run(EventQueue.java:615)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:614)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:178)
    at java.awt.Dialog$1.run(Dialog.java:1046)
    at java.awt.Dialog$3.run(Dialog.java:1098)
    at java.awt.Dialog.show(Dialog.java:1096)
    at com.thortech.xl.gui.base.tcDialog.show(tcDialog.java:102)
    at java.awt.Component.show(Component.java:1585)
    at java.awt.Component.setVisible(Component.java:1537)
    at java.awt.Window.setVisible(Window.java:842)
    at java.awt.Dialog.setVisible(Dialog.java:986)
    at com.thortech.xl.gui.base.tcfrmPopup.jbInit(tcfrmPopup.java:199)
    at com.thortech.xl.gui.base.tcfrmPopup.addForm(tcfrmPopup.java:166)
    at com.thortech.xl.adapterfactory.guibase.tcAdapterTaskTree.loadAddForm1(tcAdapterTaskTree.java:1387)
    at com.thortech.xl.adapterfactory.guibase.tcAdapterTaskTree.launchEditorForm(tcAdapterTaskTree.java:1355)
    at com.thortech.xl.adapterfactory.guibase.tcAdapterTaskTree.addAdapterTask(tcAdapterTaskTree.java:555)
    at com.thortech.xl.adapterfactory.guibase.tcAdapterTaskTree.actionPerformed(tcAdapterTaskTree.java:459)
    at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
    at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
    at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
    at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
    at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:272)
    at java.awt.Component.processMouseEvent(Component.java:6289)
    at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
    at java.awt.Component.processEvent(Component.java:6054)
    at java.awt.Container.processEvent(Container.java:2041)
    at java.awt.Component.dispatchEventImpl(Component.java:4652)
    at java.awt.Container.dispatchEventImpl(Container.java:2099)
    at java.awt.Component.dispatchEvent(Component.java:4482)
    at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
    at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
    at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
    at java.awt.Container.dispatchEventImpl(Container.java:2085)
    at java.awt.Window.dispatchEventImpl(Window.java:2478)
    at java.awt.Component.dispatchEvent(Component.java:4482)
    at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:644)
    at java.awt.EventQueue.access$000(EventQueue.java:85)
    at java.awt.EventQueue$1.run(EventQueue.java:603)
    at java.awt.EventQueue$1.run(EventQueue.java:601)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
    at java.awt.EventQueue$2.run(EventQueue.java:617)
    at java.awt.EventQueue$2.run(EventQueue.java:615)
    at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:614)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

  • OIM 11g: Add process tasks as a result of a Request?

    Is it possible in OIM 11g to have the result of a Request be that 1 or more process tasks are added to an an account's process?
    The out-of-the-box Request framework seems to be very attribute driven (Modify Provisioned Resource, Self Modify Provisioned Resource), and I suppose we could add an attribute to trigger process tasks to be added, however, without going into detail, we'd really just like to be able to add the process task with no process form updates.
    Has anyone attempted anything like this?

    Sure you can.  Create a plugin on the request status:
    <plugin pluginclass="com.custom.eventhandlers.request.RequestCompleted" version="1.0" name="RequestCompleted">
    <metadata name="status">
    <value>Request Completed</value>
    </metadata>
    </plugin>
    In your code, using benEntity.getEntityKey() you can get the "Users-Object Instance For User.Key" value for the instance the request is for.  Then search the user's existing instances of that resource object type (findObjects) and match it to the "Users-Object Instance For User.Key" value from the result set.  Then get the process instance key.  From there you can use this code to get the task details:
    Map taskMap = new HashMap();
    String taskName = map.get(resourceName);
    taskMap.put("Process Definition.Tasks.Task Name",taskName);
    tcResultSet rs =  taskOper.getTaskDetail(processInstanceKey,taskMap);
    long taskKey = rs.getLongValue("Process Definition.Tasks.Key");
    And finally this code to insert the task:
    provIntf.addProcessTaskInstance(taskKey, processInstanceKey);
    And done!
    -Kevin

  • OIM 11g R1 - Modifying a Resource Erases Custom Process Task ???

    I've created a Generic Resource in OIM that uses the Database Applications Table connector 9.1.0.5.0.
    Then I add my own process tasks through Design Console under "Process Management -> Process Definitions". On each custom process task I've attached my own custom adapters, which I created through "Development Tools -> Adapter Factory" in Design Console. These custom adapters use methods from my Java code. My Java jar file is located in "Oracle_IDM1/server/JavaTasks".
    Now here is the issue:
    Whenever I modify this resource in OIM under "Configuration -> Manage Generic Connector" (E.g Changing reconciliation type from Full to Incremental), all my custom process tasks get deleted.
    What is the reason for this? Is there a solution for this problem?

    This is indeed a major flaw for GTC. Below I found this issue in a Oracle doc.
    Doc Link: http://docs.oracle.com/cd/E14571_01/doc.1111/e14309/aptrouble.htm
    Below is a description of this issue from the Oracle documentation
    Summary:
    Customization work done on objects of a generic technology connector would be overwritten if you perform a Manage Generic Technology Connector operation.
    Description:
    You can use the Design Console to customize connector objects that are automatically created during generic technology connector creation. However, after you customize connector objects, if you perform a Manage Generic Technology Connector operation, then all the customization done on the connector objects would be overwritten. Therefore, Oracle recommends that you to apply one of the following guidelines:
    Do not use the Design Console to modify generic technology connector objects.
    The exception to this guideline is the IT resource. You can modify the parameters of the IT resource by using the Design Console. However, if you have enabled the cache for the GenericConnector and GenericConnectorProviders categories, then you must purge the cache either before or after you modify IT resource parameters. See "Purging the Cache" in the Oracle Fusion Middleware System Administrator's Guide for Oracle Identity Manager for information about running the PurgeCache utility.
    If you use the Design Console to modify generic technology connector objects, then do not use the Manage Generic Technology Connector feature to modify the generic technology connector.
    Connector objects that are automatically created are not deleted even if the generic technology connector creation process fails.

  • Retrying a particular failed Process Task for all the OIM Users

    Hi,
    We are using OIM 11.1.1. On a particular day one of the systems was unavailable hence all the process tasks for that system failed for a number of users. Is there any way of viewing all the failed process task and retrying them together, there are over 3000 users and it is not possible to go through them one by one.
    Any method either through the console or doing it programatically would be very helpful.
    Thanks in advance.
    UZ

    The OTI table has all the rejected task information. You can use it to link to user and resource instances through the OIU table as well.
    You can then take the SCH_KEY and then use code like this to process them:
    public void completeTask(){
    long[] task = new long[] {123123,3242134,23432,43534,34656,456456};
    int counter = 0;
    for (long key:task){
    try {
    counter++;
    provIntf.retryTask(key);
    System.out.println(counter + "|" + task.length);
    } catch (Exception e) {
    -Kevin

  • OIM 11gR2 : Process task adapter

    Hello Experts,
    I have to create a process task adapter in order to assign the users provisioned on AD to various groups on AD.
    1. How may i configure a new process task adapter from ther design console ?
    2. How may i map the variables between the process task created in the design console with the input parameters of the adapter java code ?

    http://www.idmworks.com/blog/oracle-identity-manager-basics-creating-a-custom-adapter-in-oim-11g
    http://idmrockstar.com/blog/2009/08/how-to-create-a-prepopulate-adapter-in-oim/ (HINT)
    http://docs.oracle.com/cd/E14571_01/doc.1111/e14309/creadp.htm#BABGHIFA

  • Queuing/Retrying 'Rejected' status OID Process Tasks: OIM-OID provisioning

    Hello Gurus,
    I have already up and running environment with OIM, OID connector pack and OID as the target system. So when a user data (for e.g. a UDF) is being provisioned from OIM to OID target system; if a process task comes back with 'rejected' status due to target unavailability/OID down; then is there any settings that we can configure within OIM design console that queues up and retries these 'rejected' tasks related to each individual user?
    Is there any setting within any of the OID lookups such that we can set a retry count for such process tasks?
    The goal is without human intervention all these 'rejected' process tasks should run successfully and be set to 'completed' status. If the target system is unavailable then there should be a way to run all these failed tasks - is my assumption.
    Is it by anyway related to 'Offline Provisioning'?
    Please provide some guidelines.
    Thanks,
    - oidm.
    Edited by: oidm on Mar 16, 2010 10:34 PM

    But it'll only allow us to 'retry' those specific tasks for a limited number of times and limited period of time. And will this task be retried only if its 'rejected' or it'll be retried for whatever number of times we specified?
    What if the target system doesn't come up for the whole day? Can we specify some value for the same in 'Duration' fields?
    So all in all if we talk about retrying the failed/rejected tasks we just have these options in hand as far as task 'status' is concerned?
    Thanks,
    - oidm.

  • OIM: Question on Process Task configuration

    Hi OIM guru,
    I have a process form and a child form. I have a process task that gets triggered when a child entry is added. My question is, is there a way to avoid duplicate child table entries? For example, a user can have groups g1, g2 ... etc. How do we configure such that the admin cannot pick the same g1 once it is already added. When clicked on the lookp for groups all groups will show but is there a way to not let an existing group to be added again?
    Thanks

    You can't. Don't give the admin that functionality. Create a seperate object that manages the groups and on your provisioning side, do your checks to see if it already exists before adding another.
    -Kevin

  • OIM 11g changing process tasks on Xellerate User

    Hi all,
    I am trying to send an email when an OIM user gets disabled. To do this i would like to set the Notification for the "Disable User" process task on Xellerate User.
    However, any attempted change to the process tasks gives this error:
    The security level for this data item indicates that it cannot be updated.
    Update failed.
    Update failed.
    Adding a post-update event handler doesn't work in 11g anymore as well.
    What would be the suggested way to send emails and fire adapters on changes to the user profile?
    Thanks for your thoughts.

    Hi Kevin,
    I got it working by creating a new process task with task effect: Disables Process Or Access To Application
    That process task had an adapter attached that would send the mail.
    After your comment I went on to experiment with the notifications. Earlier i couldn't get them to be sent, but after creating a new process task (setting the tcCompleteTask handler and the notification) it started sending the emails. And now I don't need the custom adapter anymore.
    Not sure what changed, thanks for your input.

  • OIM - Process Definition Dependent Tasks

    Hi,
    I have created two process definition tasks, and have attached task2 as a dependent task for task1. But, the task2 is not getting triggered.
    Please let me know, what I am missing.
    Regards
    Vicky

    Hi Suren,
    My requirement is once the users last name is changed in the user form, it has to be populated in the process form and in the target.
    So, I have written a process task for copying the value from user form to process form, and made the task that will talk to the target as dependent task.
    I have attached the copy task as a user trigger.
    But, here there is no return value from the copy task, so how can map this.
    And, the copy task is working fine, able to populate the data in the process form. But, the dependent task is not getting triggered, to modify in the target.
    Any help is appreciated.
    Regards
    vicky

  • AD - 'Change First Name' process task is rejected by default - OIM 11.1.2

    Hi All,
    I wanted modification to be auto provisioned to AD account when user attribute is changed.
    For this created 'Change First Name' process task and made entry in "Lookup.USR_PROCESS_TRIGGERS" lookup def.
    I followed the link Enabling update for provisioned user in OIM11g
    When I changed first name of a user from identity console, 'Change First Name' process task is assigned to XELSYSADM. But the status of the process task is Rejected. Also, the changed 'First Name' value is not updated in the process form of the user. Hence the change is not reflected into AD.
    Please tell me why the status is Rejected and changes are not reflecting.
    Also, Please provide the solution to auto provision the modifications into AD.
    Thanks in Advance.

    Thanks much kevin,
    One more query.....
    In my case when 'city' attribute is changed its invoking 'Change city' which inturn invokes 'City updated' process. Now when city is updated I need to updated 'Organization Name' in AD process form and make it reflect in AD.
    For this, I created 'Change Org Unit' process task which will populate 'Organization Name' field in process form, so inturn it will invoke 'Organization name updated' process task.
    I made 'Change Org Unit' process task as dependent task for 'Change city', so once the 'Change City' process task status is 'C', it will invoke 'Change Org unit' process task.
    But, 'Change Org unit' process task is not being invoked.
    Could you pls provide me solution.
    Thanks in advance...

  • Process Task dependency issue in OIM 11g

    Hello,
    I created 3 process tasks (Task1, Task2 and Task3) .I would like to trigger Task3 when both Task1 and Task2 get completed status.
    So what I did is I put both Task1 and Task2 as depedent tasks in Task 3 "Task Dependecy" tab. In this case both Task1 and Task2 get triggered and completed , however Task3 is NOT triggering.
    Even I tried putting both Task 1 and Task2 as Preceeding tasks for Task3, still it does not work.
    Could you please let me know how can we trigger Task3 once both Task1 and Task2 completes.
    Thanks for you help.

    By Task Dependency you can just control the order of the tasks being executed but you cannot invoke/insert a target.
    Ideally what you did as suggested in the latter option is correct: Task1 and Task2 as preceding task of Task3.
    To invoke Task3, you can do multiple things, the easiest here would be to go to the Responses tab of Task2 select the response Completed and then in Tasks to Generate section add Task3

Maybe you are looking for

  • Cannot drop user cascade

    Hi masters I cannot drop a user cascade, i'll get that error drop user HOMER cascade ERROR at line 1: ORA-00604: error occurred at recursive SQL level 1 ORA-24005: must use DBMS_AQADM.DROP_QUEUE_TABLE to drop queue tables I'''ve triied the work aroun

  • We've just had a technical fault

    Very annoying when my number isn't recognised so I have to insert that & my pin up to 10 times in succession because skype has a technical fault. This has been going on for months now so skype please get it sorted!

  • 4.0 update music lost

    I did the 4.0 update and now under songs there is nothing but under artist my music is still there. How do i get it to list each song? Thanks

  • IPS Signature Updates and CCO logins

    I cannot seem to get my IPS 4255 on version 7.0(3)E4 go gather signature updates and I think it is becasue my CCO accound is not setup correcly. I took a browse through the discussions (admittedly did not read them entirely) but can anyone point me t

  • HT201272 my entire previous tunes library is gone.  what do i do?

    my entire previous tunes library is gone.  what do i do? i tried to download from the cloud but it says something about this computer is not authorized to do so. this is soooo incorrect! help... all my usic and stuff is in limbo!