OIM 11g R2: Setting target attribute dependend on process type (create, update, disable)

Hi,
I try to set an attribute ("Action") of users on a target system (Lotus Notes) dependend on the type of process that was carried out:
When the user is created in Lotus Notes by oim, "Action" should be set to the value "create".
When the user is updated in Lotus Notes by oim, "Action" should be set to the value "update".
When the user is disabled in Lotus Notes by oim, "Action" should be set to the value "disable".
What would be the easiest way to achieve that? And how exactly would I have to set that up? (I have tried reading the documentation on Adapter Tasks, however I wasn't able to get that to working...).
Thank you!
M

Hi J,
thanks for your reply. I had some troubles trying to follow your description, but this is what I did:
1) Create one field in your process form as "Action".
I used the pre-existing field "RoamSubdir"
2) Create a new Process Task in Lotus Notes Process Defn for "Action Updated" (You can use OOTB adapter for mapping purpose)
DesignConsole: Process Management > Process Definition > "Lotus User", Add: "RoamSubdir Updated"
3) Create a new Process Task Adapter which populates which takes input as input1 and return the input.
Development Tools: Adapter Factory > Adapter Name "RoamSubdirAction", Adapter Type: "Process Task" > Tab "Variable List", Add "Name: input1, Type: String, Mapped As: Resolve at runtime", Tab "Adapter Tasks" > Add "Logic Task", "Set Variable", Variable Name "Adapter return value", Operand Type "Variable", Operand Qualifier "input1"; Click "Build".
4) Create 3 Process Tasks in Lotus Notes Process Defn . One for each action. For example: Update Action As Enable, Update Action As Disable, Update Action As Create. In each process tasks, pass input as Enable,Disable and Create respectively.
Process Management > Process Definition > "Lotus User", Add: Task Name: "Update SubRoamdir As create", Tab "Integration", Add, "Adapter", adpROAMSUBDIRACTION. Edit "2|N|input1|input", Map To: Literal, String, create; Edit "1|N|AdapterReturnValue|ReturnVariable", Map To: Process Data, Qualifier: RoamSubdir
5) Map each tasks created at step 4 to success of Create User, Enable User, Disable user respectively.
Process Definition > Edit "Create User" > Task Dependency, Dependent Tasks,  Assign "Update RoamSubdir as create"
However, this does NOT work. When provisioning a new user on Lotus, looking into the resource history I can see that "Update RoamSubdir as create" is NEVER called.
Did I do something wrong?
Thanks for your help,
M

Similar Messages

  • Attribute change run process type failed with short dump

    Hi all,
    In the process chain Attribute change run process type failed with short dump. I checked the locks in SM12 but there are no locks associated. I checked in the attribute change run screen through RSA1 -> infoobject list but there are no infoobjects there. I think the ACR was completed successfully, still the process type in the PC was in red colour. What to do and let me know what happened here.
    Thanks,
    Jack

    1. This kind of scenario is extremely rare but it happens sometimes. It might be the case that 2 attribute change runs are running at the same time.
    2. Same IO is being used in Differnet PC and getting activated.
    I think if this frequently occurs you need to check at the time of locking all running jobs and see whether anywhere else or simultaneously 2 ACR are running.
    Please do close the thread if that answers your questions. Please help us keep the forums clean and open useful information only.
    For more information search on help.sap.com and you will get lots of material.
    Regards.
    Den

  • OIM 11g - Renaming an UDF attribute

    Hi,
    May I know how i can rename a custom defined user attribute in OIM 11g?.Thanks.

    878153 wrote:
    Thanks BB.My requirement is to renamed a UDF which I have created.For example,I created a UDF with labee "Mobile" and want to change it to "Telephone" .May I know how I can achieve this?.If you want to define the label for your attribute in GUI, then use resource bundles to define the label for your label:
    $OIM_ORACLE_HOME//server/customResources/customResources_<your language>.properties
    Add the global.udf. prefix to the name of the attribute.
    Otherwise, you will have to create a new attribute and delete the old one.

  • OIM 11g - Reconciliation of Target Resource Status

    Hi,
    We're working with OIM 11.1.1.5.2 and connectors DBUM 9.1.0.4 and MSAD 9.1.1.7.
    Provisioning and reconciliation seem to be working correctly, but we found that the status of the resource is not getting reconciled on OIM console.
    For example, if we provision an user with an Oracle Database account, and then lock the account on the database, when we run reconciliation the event is generated and finished with "update succeded", we go to the UD_DB_ORA_U table and find that the field UD_DB_ORA_U_LOCK has a "LOCKED" value, then if we check the logs we can see that the connector is correctly mapping the resource status with the OIM object status:
    prepareTargetUsersRecordInOIMFormat : record value : LOCKED
    prepareTargetUsersRecordInOIMFormat : map : {OPEN=Enabled, 1=Disabled, YES=Disabled, 0=Enabled, EXPIRED & LOCKED=Disabled, NO=Enabled, LOCKED=Disabled}
    prepareTargetUsersRecordInOIMFormat : roValue : TEMPORARY_TABLESPACE_QUOTA
    prepareTargetUsersRecordInOIMFormat : Temp RO value : null
    prepareTargetUsersRecordInOIMFormat : reconData : [{Default Tablespace=27~USERS, Authentication Type=PASSWORD, Password=Dummy, Default Tablespace=27~USERS, Authentication Type=PASSWORD, Password=Dummy, Default Tablespace Quota=, Profile Name=27~USUARIOS, IT Resource=Oracle, User Name=USPRUEBA65, Temporary Tablespace=27~TEMP, Account Status=LOCKED, Status=Disabled, Global DN=, Privilege List=[], Role List=[{Role Admin Option=NO, Role Name=}], Temporary Tablespace Quota=}]
    prepareTargetUsersRecordInOIMFormat:: FINISHED
    But, even though the reconciliation has succeded the administrative console shows the account on "Enabled" status, and when I check the OIU table i can see that the OIM object status is still enabled.
    I found some threads related to this issue, the most similar was this one: Reconciliation for the deleted user accounts on Target Resource but everything there do not seem to be of much help because all tasks described are already done by the connector installation (at least in msad and dbum connectors).
    This problem is happening both for Active Directory and Oracle Database Users, maybe we're missing something but based on the documentation for both connectors we thought it was an OOTB functionality. Is there some system property or connector parameter we need to configure to make this work?
    Thanks.
    Edited by: fmc on Jul 26, 2012 12:53 PM

    Hi Pallavi,
    Well, you were right after all, we were mixing 2 totally different problems here and it got us confused.
    The problem with the DBUM connector was exactly what you said, a bug in the connector, just needed to modify the connector task object to status mapping. We were checking the Reconciliation Update Received task on AD and we thought it would be the same, and it was obviously not. Well, in this case teh recon event was being generated but nothing happened, after we changed the process task it worked like a charm.
    On the other hand, the problem with the AD reconciliation was that our search filter on the recon job was configured to ommit accounts with the disabled status (!(userAccountControl=66050)), it was certainly a silly problem, never thought we had that in the filter (it's a huge filter and we didn't pay attention to that clause the first time around) but everything is working now, thanks!

  • Issue Setting Resource Attributes via Workflow Process

    I'm currently trying to set resource attributes via a workflow process, but for whatever reason the attribute is not detected as "changed" and the update object has nothing about the attribute. I'm wondering if I'm just doing something wrong with the way I'm setting it, or if I'm missing a piece to apply the upate.
    What I'm doing is...
    1. Checking out the user view
    2. updating the attribute via code something like this...
    <set name='user.accounts[ldap].attributeIWantToChange'>
    Logic in here
    </set>
    3. then I'm checking the view back in.
    Anyone know why this isn't working(I can set other attributes like waveset.roles fine this way)?
    Edited by: UNO-AD-HM on Jul 6, 2009 12:54 PM

    Figured it out, have to load a different form in when I check the view out, the tabbed user's form will not update resource attributes.

  • OIM 11g R2 - Setting a field as mandatory while provisioning through catalo

    Hi,
    May I know how i can make a field as mandatory (Red Asterick) while trying to provision an account through catalog wizard.I dont see any option to set required=true while creating a form for an application instance.Thanks.

    login to sysadmin-> create sandbox-> go to form designer->select your form now click on customize link(right top corner)->select your attribute and set the required field as true and then save it. finally export sandbox. run catalog sync job. and then verify if attribute is mandatory in the request form/dataset or not.
    same mentioned in R2 release note

  • OIM 11g: Access Denied searching usr_emp_no in post process event handler

    I am logging in as xelsysadm and creating a new user. I have populated a UDF called Manager Employee Number with a value of 12345 and I have a corresponding user with the Employee Number populated with that same value.
    When I create the user, my code searches for a corresponding user in OIM with that employee number. The problem is that i am getting an access denied error searching use_emp_no. Ironically, in a different post process event handler, I have access to decrypting the user's password.
    I tried searching by Employee Number rather than use_emp_no (which is what is returned with AttributeName.EMPLOYEE_NUMBER.getId()) but that did not find any users. It did seem to attempt the search though.
    Here is the code and the error:
    //get the manager object and retrieve the user login and user key of the manager
    mgrRetAttrs.add("USER_LOGIN");
    mgrRetAttrs.add("USER_KEY");
    List<User> mgrList = searchUsr(mgrEmpNo, mgrRetAttrs);
    logger.finest("Retrieved " + mgrList.size() + " managers with that employee number.");
    private List<User> searchUsr(String mgrEmpNo, Set<String> mgrRetAttrs) throws AccessDeniedException, UserSearchException{
    logger.finest("************Entering BBTMgrIDPostProcEventHandler#searchUser()***********");
    logger.finest("This is the manager emp no we are searching: " + mgrEmpNo);
    SearchCriteria srchCriteria =
    new SearchCriteria(AttributeName.EMPLOYEE_NUMBER.getId(), mgrEmpNo, SearchCriteria.Operator.EQUAL);
    logger.finest("This is the search criteria: " + srchCriteria.toString());
    logger.finest("Exiting BBTMgrIDPostProcEventHandler#searchUser()");
    return getUserManager().search(srchCriteria, mgrRetAttrs, null);
    private UserManager getUserManager() {
    logger.finest("Enter BBTMgrIDPostProcEventHandler#getUserManager()");
    if (this.userMgr == null) {
    this.userMgr = Platform.getService(UserManager.class);
    logger.finest("Exit BBTMgrIDPostProcEventHandler#getUserManager()");
    return this.userMgr;
    Entering BBTMgrIDPostProcEventHandler#execute()
    oracle.iam.platform.authz.exception.AccessDeniedException: You do not have permission to search the following user attributes: usr_emp_no.
    at oracle.iam.identity.usermgmt.impl.UserManagerImpl.search(UserManagerImpl.java:1699)
    at oracle.iam.identity.usermgmt.api.UserManagerEJB.searchx(Unknown Source)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    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 $Proxy328.searchx(Unknown Source)
    at oracle.iam.identity.usermgmt.api.UserManager_nimav7_UserManagerRemoteImpl.__WL_invoke(Unknown Source)
    at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:40)
    at oracle.iam.identity.usermgmt.api.UserManager_nimav7_UserManagerRemoteImpl.searchx(Unknown Source)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    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 $Proxy196.searchx(Unknown Source)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
    at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:198)
    at $Proxy318.searchx(Unknown Source)
    at oracle.iam.identity.usermgmt.api.UserManagerDelegate.search(Unknown Source)
    at com.oracle.iam.bbt.eventhandler.BBTFindMgrID.searchUsr(BBTFindMgrID.java:244)
    at com.oracle.iam.bbt.eventhandler.BBTFindMgrID.executeEvent(BBTFindMgrID.java:189)
    at com.oracle.iam.bbt.eventhandler.BBTFindMgrID.execute(BBTFindMgrID.java:114)
    at oracle.iam.platform.kernel.impl.OrchProcessData.runPostProcessEvents(OrchProcessData.java:1168)
    at oracle.iam.platform.kernel.impl.OrchProcessData.runEvents(OrchProcessData.java:710)
    at oracle.iam.platform.kernel.impl.OrchProcessData.executeEvents(OrchProcessData.java:227)
    at oracle.iam.platform.kernel.impl.OrchestrationEngineImpl.resumeProcess(OrchestrationEngineImpl.java:674)
    at oracle.iam.platform.kernel.impl.OrchestrationEngineImpl.resumeProcess(OrchestrationEngineImpl.java:705)
    at oracle.iam.platform.kernel.impl.OrhestrationAsyncTask.execute(OrhestrationAsyncTask.java:108)
    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 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    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.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 $Proxy331.onMessage(Unknown Source)
    at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:574)
    at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:477)
    at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:379)
    at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4659)
    at weblogic.jms.client.JMSSession.execute(JMSSession.java:4345)
    at weblogic.jms.client.JMSSession.executeMessage(JMSSession.java:3821)
    at weblogic.jms.client.JMSSession.access$000(JMSSession.java:115)
    at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:5170)
    at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    Caused by: oracle.iam.identity.exception.SearchAttributeAccessDeniedException: You do not have permission to search the following user attributes: usr_emp_no.
    at oracle.iam.identity.usermgmt.impl.UserManagerImpl.search(UserManagerImpl.java:1696)
    ... 76 more
    Thanks,
    Ruth

    This is what fixed the problem:
    Instead of the following:
    //get the manager object and retrieve the user login and user key of the manager
    mgrRetAttrs.add("USER_LOGIN");
    mgrRetAttrs.add("USER_KEY");
    I needed to do this instead:
    mgrRetAttrs.add(UserManagerConstants.AttributeName.USER_LOGIN.getId());
    mgrRetAttrs.add(UserManagerConstants.AttributeName.USER_KEY.getId());
    Then I changed the searchCriteria back to the following:
    SearchCriteria srchCriteria =
    new SearchCriteria("Employee Number", "12345", SearchCriteria.Operator.EQUAL);
    This did the trick.
    Ruth

  • 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.

  • Trying to create Organization in OIM 11g R2 using API

    Hi All,
    I am trying to create Organization in OIM 11g R2 using API's. I able to create a organization with attributes Organization Name and Organization Customer Type but when i am trying to add Parent Organization Name it is throwing me the following error
    Caused by: oracle.iam.platform.entitymgr.UnknownAttributeException: Organization : [Parent Organization Name]
    any help in this regard will be helpful....
    Thanks

    Yes i do have the org with act_key 27
    I have done that changes...still it is throwing the same error
    Exception in thread "main" oracle.iam.identity.exception.OrganizationCreateException: IAM-3056148:act_createby is a System Attribute and cannot be set through API.:act_createby
         at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:237)
         at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:348)
         at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:259)
         at oracle.iam.identity.orgmgmt.api.OrganizationManager_874ar_OrganizationManagerRemoteImpl_1036_WLStub.createx(Unknown Source)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         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 $Proxy2.createx(Unknown Source)
         at oracle.iam.identity.orgmgmt.api.OrganizationManagerDelegate.create(Unknown Source)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         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 $Proxy3.create(Unknown Source)
         at oracle.iam.ui.custom.Class1.main(Class1.java:108)
    Caused by: oracle.iam.identity.exception.OrganizationCreateException: IAM-3056148:act_createby is a System Attribute and cannot be set through API.:act_createby
         at oracle.iam.identity.orgmgmt.impl.OrganizationManagerImpl.create(OrganizationManagerImpl.java:318)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
         at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
         at oracle.iam.platform.utils.DMSMethodInterceptor.invoke(DMSMethodInterceptor.java:25)
         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
         at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
         at $Proxy333.create(Unknown Source)
         at oracle.iam.identity.orgmgmt.api.OrganizationManagerEJB.createx(Unknown Source)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         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.oracle.pitchfork.spi.MethodInvocationVisitorImpl.visit(MethodInvocationVisitorImpl.java:34)
         at weblogic.ejb.container.injection.EnvironmentInterceptorCallbackImpl.callback(EnvironmentInterceptorCallbackImpl.java:54)
         at com.oracle.pitchfork.spi.EnvironmentInterceptor.invoke(EnvironmentInterceptor.java:42)
         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 $Proxy331.createx(Unknown Source)
         at oracle.iam.identity.orgmgmt.api.OrganizationManager_874ar_OrganizationManagerRemoteImpl.__WL_invoke(Unknown Source)
         at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:40)
         at oracle.iam.identity.orgmgmt.api.OrganizationManager_874ar_OrganizationManagerRemoteImpl.createx(Unknown Source)
         at oracle.iam.identity.orgmgmt.api.OrganizationManager_874ar_OrganizationManagerRemoteImpl_WLSkel.invoke(Unknown Source)
         at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:667)
         at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:230)
         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:256)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
    Caused by: oracle.iam.platform.kernel.ValidationFailedException: IAM-3056148:act_createby is a System Attribute and cannot be set through API.:act_createby
         at oracle.iam.identity.usermgmt.utils.UserManagerUtils.createValidationFailedException(UserManagerUtils.java:337)
         at oracle.iam.identity.usermgmt.utils.UserManagerUtils.createValidationFailedException(UserManagerUtils.java:372)
         at oracle.iam.identity.utils.Utils.checkAllowedAttributes(Utils.java:2523)
         at oracle.iam.identity.orgmgmt.impl.handlers.create.CreateOrganizationValidationHandler.validate(CreateOrganizationValidationHandler.java:102)
         at oracle.iam.platform.kernel.impl.OrchProcessData.validate(OrchProcessData.java:258)
         at oracle.iam.platform.kernel.impl.OrchProcessData.runValidationEvents(OrchProcessData.java:203)
         at oracle.iam.platform.kernel.impl.OrchestrationEngineImpl.validate(OrchestrationEngineImpl.java:699)
         at oracle.iam.platform.kernel.impl.OrchestrationEngineImpl.process(OrchestrationEngineImpl.java:547)
         at oracle.iam.platform.kernel.impl.OrchestrationEngineImpl.orchestrate(OrchestrationEngineImpl.java:485)
         at oracle.iam.platform.kernel.impl.OrchestrationEngineImpl.orchestrate(OrchestrationEngineImpl.java:403)
         at sun.reflect.GeneratedMethodAccessor1171.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
         at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
         at oracle.iam.platform.utils.DMSMethodInterceptor.invoke(DMSMethodInterceptor.java:25)
         at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
         at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
         at $Proxy251.orchestrate(Unknown Source)
         at oracle.iam.identity.orgmgmt.impl.OrganizationManagerImpl.create(OrganizationManagerImpl.java:306)
         ... 46 more

  • [OIM 11g] OOTB Email Notification

    Hi Gurus,
    The OIM 11g has OOTB Email Notification.
    Is there a way of disabling the OOTB email notifications?
    TiA,
    Carlos

    Try the following system properties:
    Recon.SEND_NOTIFICATION=false
    RequestNotificationLevel=0
    XL.ProxyNotificationTemplate=Notify Proxy User
    HTH,
    BB

  • "Attribute Change Run" process has to follow process "Execute InfoPack

    Hi All,
             i created process chain for M.D SD area. here i created start varient, then execute info package process created and when i am checking that it showing some warning message like ....
    A type "Attribute Change Run" process has to follow process "Execute InfoPackage" var.ZPAK_4B9B5FH2BTQJOBTBAWHVM5ZY2 in the chain.
    Here i can't understand what i have to do....
    Any inputs for this...........
    Thanx in Advance
    Subbu.

    hi,
    Check master data objects in both process types "Excute info package" after start varianet and in attribut echange run process type.
    Both should match or system will throw error message.
    The concept is like Attribute change run has to run when ever new data is loaded to master data attributes.
    Regards,
    Arun Thangaraj

  • Export User Attributes in OIM 11g

    Hi,
    Can anyone let me know how to export User defined attributes in OIM 11g (11.1.1.5)? I couldn't find option in export manager for user defined fields (as in 9.x version).

    bbagaria wrote:
    madhatter wrote:
    BTW, the result of exporting the "User UDF" category contains the /file/User.xml too. So, you need not deal with metadata directly to get this file.Interesting, never worked for me.Use the code snippet in the Export section at http://idmclub.wikidot.com/import-export-deployment-artifacts
    Use "User UDF" instead of "Resource". You will get something like the following:
    <?xml version="1.0" encoding="UTF-8"?>
    <xl-ddm-data version="2.0.0.0" user="XELSYSADM" database="jdbc:oracle:thin:@localhost:1521/orcl" exported-date="1312490747931" description="">
    <Form repo-type="RDBMS" name="USR" subtype="User UDF">
    <SDK_ORC>0</SDK_ORC>
    <SDK_SCHEMA>DEV_OIM</SDK_SCHEMA>
    <SDK_DATA_LEVEL>2</SDK_DATA_LEVEL>
    <SDK_DESCRIPTION>Users - User Defined Fields</SDK_DESCRIPTION>
    <SDK_UPDATE>1304799781000</SDK_UPDATE>
    <SDK_ACTIVE_VERSION>0</SDK_ACTIVE_VERSION>
    <SDK_LATEST_VERSION>0</SDK_LATEST_VERSION>
    <SDK_TYPE>S</SDK_TYPE>
    <FormField repo-type="RDBMS" name="USR_UDF_LS_CHG_CODE">
    </FormField>
    <FormAdministrator repo-type="RDBMS">
    </FormAdministrator>
    </Form>
    <UserXml repo-type="MDS" name="User" mds-path="/file" mds-file="User.xml">
    <completeXml>
    <UserXml>
    <entity-definition xmlns="http://www.oracle.com/schema/oim/entity">
    </entity-definition>
    </UserXml>
    </completeXml>
    </UserXml>
    <DataObjectDef repo-type="RDBMS" name="com.thortech.xl.dataobj.tcUSR">
    </DataObjectDef>
    </xl-ddm-data>Enjoy the UserXml XML element!
    Disclaimer: I use 11.1.1.3, not 11.1.1.5
    Edited by: madhatter on Aug 5, 2011 1:10 AM

  • How to find history of changes of organization attributes in OIM 11G?

    Hello.
    I need to find fistory of all changings in organization attributes, chould you help me to find, what table can i use for it?
    I use OIM 11G and oracle database 11.2.0.

    Hello, Thank you for your answer.
    I mean modification of an organization such as changing of the organization name, status, etc. As i understand your previous answer, there is no table that keeps such information. Is it right?
    If it is right, how can I find it?
    Should I make any triggers or can i find informations in another way?

  • Available attributes in OIM 11g notifications

    We have been using the new notifications templates in oim11g following the descriptions as given in the blog post below.
    http://fusionsecurity.blogspot.com/2011/07/oim-11g-notifications.html
    This is how an event is specified:
    <?xml version='1.0' encoding='UTF-8'?>
    <Events xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../notification/metadata/NotificationEvent.xsd">
    <EventType name="ApprovalTaksOpenEvent">
    <StaticData>
    <Attribute Name="usrLogin" DataType="X2-Entity" EntityName="User"/>
    </StaticData>
    <Resolver class="oracle.iam.request.notification.CustomResolver">
    <Param Name="usrLogin" DataType="X2-Entity" EntityName="Request"/>
    </Resolver>
    </EventType>
    </Events>
    Basically we found that wat is in the StaticData part is show in the notification template interface as Available data (in the above example all user attributes are shown). Now my question is it somehow possible to have any attribute show in the Available Data section of an Notification Template. It would be create if "business" users don't have to "guess" which placeholders are available for a certain notification template. I already tried the variant below but it did not have the desired result.
    <StaticData>
    <Attribute Name="somePlaceHolder" DataType="String"/>
    </StaticData>
    Greetings
    Bas
    Edit-> As per documentation it should be possible to do this with the non static data, I will investigate it furter
    Edited by: bsteen on Apr 6, 2012 7:11 AM

    You can open the jar file with a decompiler and just view the NotificationResolver class and see what attributes are being sent to it.
    -Kevin

  • Exchange attributes -OIM 11g R2

    Hi,
    I am on OIM 11g R2
    I am trying to configure Exchange connector (latest version) with connector server installed. Now in our env we populate multiple values for proxyAddresses -as SMTP, smtp, sid. How do we handle this in Exchange connector?
    Also, I can see that there many primary exchange resource related attributes (like msExchUserAccountControl, msExchMailboxGuid) which are not mentioned any where in Exchange connector. How do we handle them?
    Thanks

    For proxyAddress as it is multiple attribute, best way in OIM is via child table. But there is issue with ICF exchange v11.1.1 connector where it is not able to update the proxyaddress. I already have bug filled for it. Not sure about the other attributes you mentioned. The are single valued so you can try extending the connector to include them as per connector doc and check the behavior.
    My response is based on my exp with ICF and OIM11G R1. Since the connector version is same for R2, thus the reponse.
    -Bikash

Maybe you are looking for

  • Why does my ipod no longer appear?

    I just updated to iTunes 11.0.3 and now my iPod doesn't show up.  It appears on Finder and tells me its connected but iTunes doesn't see it. When I went through the support pages, I got options for iPhone, iTouch, iPad, iPod Nano and iPod Shuffle.  P

  • Help with pricing condition??

    Hi Guyz, I have a requirement with my client, the want to supply material to an external customer at an intercompany price(ZPR9). So whenever a sales order is created for this specific customer it should pull the price from Intercompany price(ZPR9). 

  • Classic Sync Issues following Restore

    I've recently has issues with the 160Gb classic freezing so it's now been restored. It doesn't freeze now (phew!)  but now it only wants to sync the ENTIRE library (which is larger than the 160Gb capacity) or Selected Playlists, Artists, Albums or Ge

  • Multiclip query, am I missing something obvious?

    I'm setting up a three camera multiclip for a dance show. I want to switch video and take stereo audio (ch 1 and 2) from cam 1 throughout for the music. That's easy enough BUT I'd also like to take one audio track from cam 2 throughout for the foot s

  • Video streaming without iPhone's internal player

    Hi everyone, We publish training videos and have the problem that we need to restrict the player to only play/pause. We have tried every player, we are now publishing videos via Adobe Captivate (an eLearning app) and it works fantastic for us on almo