Direct provisioing using API in OIM 11g

Hi Experts,
I am facing couple of issues.
*1)* I am trying to provision a resource direcly using API's in OIM 11g. Here I do not have any object form for this resource but I have a process form with some pre-population adapters.
And I am trying to use the below code for direct provisioining.
Hashtable objectHash = new Hashtable();
objectHash.put("Objects.Name", objectName);
tcResultSet objectResultSet = objIntf.findObjects(objectHash);
long objectKey = objectResultSet.getLongValue("Objects.Key");
com.thortech.xl.vo.ResourceData data = userIntf.provisionResource(userKey, objectKey);
long userObjectInstanceKey = Long.parseLong(data.getOiuKey());
long objectInstanceKey = Long.parseLong(data.getObiKey());
And I am getting nulls for the attributes userObjectInstanceKey & objectInstanceKey .
Please let me know how to provision a resource which has no object form but has some pre-population adapters using API .
*2)* I am trying to provision a resource direcly using API's in OIM 11g. Here I do have an object form for this resource which has one of the attribute as of type lookup.
ResourceData data = userIntf.provisionResource(userKey, resourceKey);
long userObjectInstanceKey = Long.parseLong(data.getOiuKey());
long objectInstanceKey = Long.parseLong(data.getObiKey());
Hashtable objectHash = new Hashtable();
objectHash.put("UD_ADGROUP_NAME",groupName);
In this case I am getting objectInstanceKey properly but it is not seeting lookup field value but it is setting all other fields on the object form correctly.
How to set a field of type lookup on the object form while provisioing a resource directly using API's.
Thanks a lot for your help.

947670 wrote:
Hi Pallavi,
I am not populating any object form. I am trying for direct provisioning a resource thru OIM API's.
Hence, I need populate all of the process form fields inorder to skip the approval flow. So, I was using setProcessFormData method.
Here is what happening.
1) My resource has a request dataset which has only one field called "Group Name".
2) My resource has a process form with the fields name UD_GROUP_NAME, UD_GROUP_DESCRIPTION, UD_GROUP_OWNER.
3) When I use the below code, I was able to populate the fields UD_GROUP_DESCRIPTION, UD_GROUP_OWNER (Because pre-populate adapters are getting invoked) as they did not exist on the request data.
tcFormInstanceOperationsIntf formInstanceOps=Platform.getService(tcFormInstanceOperationsIntf.class);
ResourceData data = userIntf.provisionResource(userKey, resourceKey);
long userObjectInstanceKey = Long.parseLong(data.getOiuKey());
long objectInstanceKey = Long.parseLong(data.getObiKey());
Hashtable objectHash = new Hashtable();
objectHash.put("*UD_ADGROUP_NAME*",groupName);
formInstanceOps.setProcessFormData(objectInstanceKey, objectHash);
4) I am having this issue only with the fields that are exist on the request dataset. Since, UD_GROUP_NAME exist on the request dataset, even if I try to set some value in the process form, it is not taking.
Using API's, I am not able to populate any of the attributes on the process form that are exist on the request dataset.
How to solve this issue.1. Check the process form field name.
2. Use tcUserOperationsIntfAPI Method provisionObject(userKey,ObjectKey)
userIntf.provisionObject(userKey, objectKey);
3. Get the process-instance key.
tcResultSet objResultSet = userIntf.getObjects(userKey);
               int objCount = objResultSet.getRowCount();
               for (int count = 0; count < objCount; count++) {
                    objResultSet.goToRow(count);
                    if (objResultSet.getStringValue("Objects.Name").equalsIgnoreCase(resourceObjectName)){
                         processInstanceKey = objResultSet.getLongValue("Process Instance.Key");
4. Use tcFormInstanceOperationsIntf API method setProcesFormData(processInstanceKey,dataMap)
Hope this helps you.

Similar Messages

  • Issue with deleting a group using Request APIs in OIM 11g R1

    Hi,
    I am facing an issue with Request Based provisioning in OIM 11g R1.
    I am currently testing a scenario where i have imported a data set for 'Modify Provisioned Resource' and am able to add a group/entitlement to an already provisioned resource by using the following code :
            RequestBeneficiaryEntityAttribute childEntityAttribute= new RequestBeneficiaryEntityAttribute();
            childEntityAttribute.setName("AD User Group Details");
            childEntityAttribute.setType(TYPE.String);
            List<RequestBeneficiaryEntityAttribute> childEntityAttributeList=new ArrayList<RequestBeneficiaryEntityAttribute>();
            RequestBeneficiaryEntityAttribute attr = new RequestBeneficiaryEntityAttribute("Group Name", <group>,                                                                       RequestBeneficiaryEntityAttribute.TYPE.String);
            childEntityAttributeList.add(attr);
            childEntityAttribute.setChildAttributes(childEntityAttributeList);
            childEntityAttribute.setAction(RequestBeneficiaryEntityAttribute.ACTION.Add);
            beneficiaryEntityAttributeList = new ArrayList<RequestBeneficiaryEntityAttribute>();   
            beneficiaryEntityAttributeList.add(childEntityAttribute);
            beneficiarytEntity.setEntityData(beneficiaryEntityAttributeList);
    This works fine for adding a group but if i try to remove a group by changing the action to Delete in the same code, the request fails. The only change made is in the following line:
    childEntityAttribute.setAction(RequestBeneficiaryEntityAttribute.ACTION.Delete);
    Could you please suggest where can this possibly be wrong.
    Thanks for your time and help

    Hi BB,
    I am trying to follow up your response.
    You are suggestng to use prepopulate adapter for to populate respource object name, that means We have to just use an sql query from obj tabke to get the resource object name. right ?? it could be like below, what should I have entity-type value here ??
    <AttributeReference name="Field1" attr-ref="act_key"
    available-in-bulk="false" type="Long" length="20" widget="ENTITY" required="true"
    entity-type="????"/>
    <PrePopulationAdapter name="prepopulateResurceObject"
    classname="my.sample.package.prepopulateResurceObject" />
    </AttributeReference>
    <AttributeReference name="Field2" attr-ref="Field2" type="String" length="256" widget="lookup-query"
    available-in-bulk="true" required="true">
    <lookupQuery lookup-query="select lkv_encoded as Value,lkv_decoded as Description from lkv lkv,lku lku
    where lkv.lku_key=lku.lku_key and lku_type_string_key='Lookup.xxx.BO.Field2'
    and instr(lkv_encoded,concat('$Form data.Field1', '~'))>0" display-field="Description" save-field="Value" />
    </AttributeReference>
    Then I need think about the 'Lookup.xxx.BO.Field2' format.
    Could you please let me know if my understanding is correct?? What is the entity-type value of the first attribute reference value?
    Thanks for your all help.

  • Problem with Acess policy based Provisioning using DBConnecor in OIM 11g R2

    Hi,
    I am doing Access policy based Provisioning using DB Connector 9.1.0.5.0 in OIM 11g r2.
    it is throwing ITResource Instance with key 0 does not exist. but there no option to select it resource in Process form via Acesspolicy.
    in Application instance form there is a form in that it-resource field is available with default value 0. i am trying to update this value it is not updating . at the time of triggering access policy i am getting following error.
    [XELLERATE.SERVER] [tid: [ACTIVE].ExecuteThread: '8' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: oiminternal] [ecid: 0000JdMSEGQApIGqywYfMG1GU6ud000002,0] [APP: oim#11.1.2.0.0] Class/Method: APIUtils/createApplicationInstance encounter some problems: ITResource Instance with key 0 does not exist.[[
    oracle.iam.provisioning.exception.ITResourceNotFoundException: ITResource Instance with key 0 does not exist.
         at oracle.iam.provisioning.util.ApplicationInstanceUtil.validateITResource(ApplicationInstanceUtil.java:119)
         at oracle.iam.provisioning.impl.ApplicationInstanceServiceImpl.addApplicationInstance(ApplicationInstanceServiceImpl.java:70)
         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 $Proxy455.addApplicationInstance(Unknown Source)
         at oracle.iam.provisioning.api.ApplicationInstanceServiceEJB.addApplicationInstancex(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)
    its urgent requirement.
    Thanks,
    Edited by: 853559 on Oct 12, 2012 2:25 PM

    You can re-visit access policy It will have the Process form where you can provide the access policy and save it. Access policy is already created so you can modify access policy and open the process form select IT Resource and save it.
    Another way to write pre-pop adapter for populating IT Resource on the process form. But I am sure you can provide it resource via access policy.
    ---nayan

  • Service IDs API for OIM 11g

    Hello,
    I have one requirement to get ServiceID details in OIM 11g using APIs. basicllay I need to get the Service Ids from OIM .
    Please let me know if you have any solutions for this.
    Thanks!

    Hello,
    Any proposed solution for doing ServiceId provisioning in OIM11g ?I see there is an option for Service ID check bo while creating a provisioning request.I am note sure what is the use of this? any information would be helpful.
    Thanks,

  • Connecting using APIs to OIM that is being protected by OAM

    Hello,
    I am trying to get an understanding of how to connect to OIM and create a user using APIs while it is protected by OAM. My situation is I have custom APIs requirement that should connect to an OIM instance tha is protected by OAM instance. I don't have the user ID and password but instead I have the OAMAuthncookie which does not contain the password. Once I connect, I can use the userManagment APIs to create the user.
    Two questions that I am trying to find the answers to are:
    1. Should there be an integration between OAM and OIM for this or will it suffice to have OIM protected by an OAM webgate.
    2. and what would the flow be for the custom API to pass the requesting user context to OIM.
    Thanks in advance.

    Thank you very much User9212679 that is very helpful. A few questions:
    1.what would AuthenticatedSelfService.class contain?
    2. Does it use OAMAuthnToken?
    3. Does this work if we OAM is protecting OIM using a webgate or does it require OIM-OAM Integration?
    Thank you

  • Approval process creation steps using JDeveloper in OIM 11g R2

    Hi,
    Please help me to create approval process creation using JDeveloper and how to use the approval process in OIM provision in OIM 11g R2.
    Thanks in Advace,
    srini

    refer developer's guide to get the detailed steps. http://docs.oracle.com/cd/E27559_01/dev.1112/e27150/request.htm#BABFFJDH
    Also refer OBE tutorial http://www.oracle.com/webfolder/technetwork/tutorials/obe/fmw/oim/oim_11g/Custom_Approval_Process_for_Resource_Request/custom_approval_process_for_resource_provision.htm#t3
    There will be slight changes in the steps as this OBE is for 11gR1.
    High level steps:
    Create a new application using the following command
    ant -f <OIM_HOME>/server/workflows/new-workflow/new_project.xml.
    It will be created in OIM_HOME/workflows/new-workflow/process-template/ directory
    Openthe .jws file in jdeveloper and edit the default human task and add whatever logic is needed.
    Then deploy the composite after which you need to create an approval policy and link the SOA composite created
    Edited by: Durgaprasad on Apr 24, 2013 1:55 AM

  • Resource Object API in OIM 11g r2

    Hi All,
    I'm new to OIM 11.1.2 and I'm working on provisioning users(trusted source) to OIM using custom code.
    In oim 9x ,tcObjectOperationsIntf is used to perform Resource object  Operations.I would like to know about Resource Object api in 11g R2
    Please help me on this.
    Regards,
    Madhu

    Resource objects in OIM11GR2 are application instances. You can refer application instance service API:
    http://docs.oracle.com/cd/E27559_01/apirefs.1112/e28159/oracle/iam/provisioning/api/ApplicationInstanceService.html
    Also, you can refer oim service api for common operations:
    http://docs.oracle.com/cd/E27559_01/apirefs.1112/e28159/oracle/iam/api/OIMService.html
    regards,
    GP

  • Email Notification  API in OIM 11g

    Hi,
    I would like to send an email in my schedule task.The schedule task is written using 11g APIs.I am planning to use tcEmailNotificationUtil for sending emails.But tcEmailNotificationUtil class expects tcDataProvider and I couldnt get the handle to this,as my schedule task is extending TaskSupport and not the SchedulerBase task?.Is there any way to solve this problem?.I will be happy if i get a sample code to send a email notification using 11g API.Thanks.

    Below post will be helpfull
    Re: 11g- Send mail through scheduler
    this worked for me
    Regards
    Vm

  • Error in using Lookup Query - OIM 11g

    Hi Guys,
    I am trying to use following lookup query:
    select usr_key, usr_login from USR where usr_status = 'Active' and have following mapping defined in the process form:
    Column Width = 200
    Lookup Column Name = usr_login
    Column Names = usr_key, usr_login
    Column Captions = USER_KEY, USER_LOGIN
    The values are getting populated properly while searching for the lookup. But when I click on 'SELECT' button. It throws error. saying 'A system error occurred'
    I see following error in the log:
    <Jul 4, 2011 7:19:07 PM IST> <Error> <XELLERATE.WEBAPP> <BEA-000000> <Class/Method: tcLookupFieldAction/selectedValue encounter some problems: {1}
    Thor.API.Exceptions.tcColumnNotFoundException
    at Thor.API.tcMetaDataSet.getStringValue(tcMetaDataSet.java:368)
    at com.thortech.xl.webclient.actions.tcLookupFieldAction.selectedValue(tcLookupFieldAction.java:1723)
    ### Steps to Reproduce Problem ###
    1. Create a new process form
    2. For one of the column, assign following properties:
    Lookup Query = select usr_key, usr_login from USR where usr_status = 'Active'
    Column Width = 200
    Lookup Column Name = usr_login
    Column Names = usr_key, usr_login
    Column Captions = USER_KEY, USER_LOGIN
    3. Activate the form
    4. Open the resource in Web Console
    5. Search for that lookup.
    6. Select any of the value
    7. Press 'Select' button. Error is thrown.
    Could somebody please help me out with this issue?
    Thanks,

    Got the solution:
    tcColumnNotFoundException with Lookup Query

  • Reassigning of task using API in OIM11g

    HI Folks,
    Can someone help me how to reassign task using API in OIM 11g?
    The request is created and assigned the task to xelsysadm by default.
    I want the task be reassigned to approvers group by retrieving all the pending task of xelsysadm.
    The issue here is tcRequestOperations is no longers works in 11g.
    I checked the RequestService API , it doesnt have a method of reassigning task.
    Are there any ways aside from using API?
    Hope you guys can help me here.
    thanks,

    You'll have to use SOA APIs for the same.

  • Retrieve field value lookup OIM 11g

    Hello! I have a problem to get the value of an attribute lookup, for example, to use this syntax OIM 9
    Lookup Query = select from lkv_decoded lkv, lku WHERE lkv.lku_key = lku.lku_key and lkv_encoded = *'$Form date$. $USR_UDF_DEPARTMENT$'* and lku_type_string_key = 'Lookup.Position_new'.
    What is the syntax used in the OIM 11g? ('$Form Data$.$USR_UDF_DEPARTMENTS$)
    Help me !
    Thanks
    Edited by: 825715 on Feb 10, 2011 8:48 AM

    So,
    I have a form with an LOVs attribute, how to get the value selected in this LOVs and put in a query? (Dependent Lookup)

  • Direct provisioning through API - OIM 11g

    Hi,
    OIM 11g here. I am trying to use the APIs to make direct provisioning. What i have done till now:
    tcUserOperationsIntf userIntf = (tcUserOperationsIntf)ioUtilityFactory.getUtility("Thor.API.Operations.tcUserOperationsIntf");
    ResourceData rd = userIntf.provisionResource(userkey, objectkey);
    now, in the ResourceData object i have two ids, obiKey and ouiKey. Now i need to extract the process instance key with those numbers. How can i do this?
    Using the userIntf getObjects method i can get the list of objects provisioned, iterate over it and retrieve the process instance key of the object which matches obiKey and ouiKey. Is there an easier method to do this?
    Another question, which one is the process instance key, ORC_KEY or ORC_TOS_INSTANCE_KEY ?
    Last, how do i trigger the task responsible for provisioning given the filled process form?
    thx in advance

    Ok, i guess the process instance key is ORC_KEY.
    Now i am trying to provision through APIs a resource object (say AD User) to an OIM user. I have used the provisionResource(userkey, objectkey) method, but the Create User task is not put in the Resource History (there is only the System Validation Task), and i don't know how to look for it's task id to add it manually.

  • Creation of a Request in OIM 11G using API's

    Hi Friends,
    I am trying to create a request using OIM 11g API's.
    I am trying to do this for EBS Responsibility resource and this resource has a request dataset has EBS-IT-Resource-Instance, application name, responsibility name, start date and security group. Please note application name, responsibility name, start date and security group are in child form.
    I am trying to populate the request dataset using the below code.
    List<RequestBeneficiaryEntityAttribute> entityAttrList;
    RequestBeneficiaryEntity entity = null;
    entityAttrList = new ArrayList<RequestBeneficiaryEntityAttribute>();
    entity = new RequestBeneficiaryEntity();
    tcITResourceInstanceOperationsIntf tcITResourceIntf = Platform.getService(tcITResourceInstanceOperationsIntf.class);
    HashMap searchcriteria = new HashMap<String, String>();
    searchcriteria.put("IT Resources.Name", "EBSHF-APPS12");
    tcResultSet resultSet = tcITResourceIntf.findITResourceInstances(searchcriteria);
    long itResourceKey=resultSet.getLongValue("IT Resources.Key");
    entityAttrList.add(this.getAttrLong("eBusiness Suite Instance Name",itResourceKey));
    entityAttrList.add(this.getAttr("Application Name","3~300"));
    entityAttrList.add(this.getAttr("Responsibility Name", "3~300~52281"));
    entityAttrList.add(this.getAttr("Security Group", "3~0"));
    entity.setEntityKey(getResourceKey("Oracle eBusiness Responsibility"));
    entity.setEntityType(RequestConstants.RESOURCE);
    entity.setEntitySubType("Oracle eBusiness Responsibility");
    entity.setEntityData(entityAttrList);
    private RequestBeneficiaryEntityAttribute getAttr(String name, String value)
    RequestBeneficiaryEntityAttribute attr = null;
    attr = new RequestBeneficiaryEntityAttribute(name, value, RequestBeneficiaryEntityAttribute.TYPE.String);
    return attr;
    private RequestBeneficiaryEntityAttribute getAttrLong(String name, long value)
    RequestBeneficiaryEntityAttribute attr = null;
    attr = new RequestBeneficiaryEntityAttribute(name, value, RequestBeneficiaryEntityAttribute.TYPE.Long);
    return attr;
    My code is working fine and a request is getting created. But when I try to open the request dataset(object form) for the newly created request, I am getting null exceptions.
    If I did not populate the fields that are in the child form application name, responsibility name and security group which are highlighted above, then I am able to view the form with the correct IT-Resource-Instance name after request creation.
    So, I am thinking I am doing something wrong while populating child form data in the request dataset.
    Can you please provide me some code snippet to populate the child using 11G API'S?

    Hi Bikash,
    After referring your code, i made changes in mine. Here is my updated code.
    RequestBeneficiaryEntityAttribute parantAttr=null;
    List<RequestBeneficiaryEntityAttribute> entityAttrList;
    RequestBeneficiaryEntity entity = null;
    entity = new RequestBeneficiaryEntity();
    parantAttr=this.getAttrLong("eBusiness Suite Instance Name", itResourceKey);
    RequestBeneficiaryEntityAttribute mid1 = new RequestBeneficiaryEntityAttribute();
    List <RequestBeneficiaryEntityAttribute> childAttributesList = new ArrayList<RequestBeneficiaryEntityAttribute>();
    childAttributesList.add(this.getAttr("Application Name", "3~555"));
    childAttributesList.add(this.getAttr("Responsibility Name", "3~555~22862"));
    childAttributesList.add(this.getAttr("Security Group", "3~0"));
    mid1.setChildAttributes(childAttributesList);
    mid1.setAction(RequestBeneficiaryEntityAttribute.ACTION.Add);
    entityAttrList = new ArrayList<RequestBeneficiaryEntityAttribute>();
    entityAttrList.add(parantAttr);
    entityAttrList.add(mid1);
    But when I try to run this, it is getting failed saying "RequestServiceException: IAM-2050033:Invalid attribute name null. No corresponding reference was found in the data set ProvisionResourceOracle eBusiness Responsibility".
    Here is my request data set for your reference.
    <AttributeReference name="eBusiness Suite Instance Name" attr-ref="eBusiness Suite Instance Name" type="Long" length="50" widget="itresource-lookup" required="true" available-in-bulk="true" itresource-type="eBusiness Suite UM"/>
    <AttributeReference available-in-bulk="true" length="10" widget="text" type="String" attr-ref="UD_EBH_RSCP" name="EBS HR Foundation User Responsibilities">
    <AttributeReference name="Application Name" attr-ref="Application Name" type="String" length="256" widget="lookup-query" available-in-bulk="true" required="true">
    <lookupQuery lookup-query="select lkv_encoded as Value,lkv_decoded as Description from lkv lkv, lku lku where lkv.lku_key=lku.lku_key and lku_type_string_key='Lookup.EBS.Application' and lkv_encoded like concat('$Form data.eBusiness Suite Instance Name', '~%')" display-field="Description" save-field="Value"/>
    </AttributeReference>
    <AttributeReference name="Responsibility Name" attr-ref="Responsibility Name" type="String" length="256" widget="lookup-query" available-in-bulk="true" required="true" primary="true">
    <lookupQuery lookup-query="select lkv_encoded as Value,lkv_decoded as Description from lkv lkv,lku lku where lkv.lku_key=lku.lku_key and lku_type_string_key='Lookup.EBS.Responsibility' and lkv_encoded like concat('$Form data.Application Name','~%')" display-field="Description" save-field="Value"/>
    </AttributeReference>
    <AttributeReference name="Security Group" attr-ref="Security Group" type="String" length="256" widget="lookup-query" available-in-bulk="true" required="true">
    <lookupQuery lookup-query="select lkv_encoded as Value,lkv_decoded as Description from lkv lkv, lku lku where lkv.lku_key=lku.lku_key and lku_type_string_key='Lookup.EBS.SecurityGroup' and lkv_encoded like concat('$Form data.eBusiness Suite Instance Name', '~%')" display-field="Description" save-field="Value"/>
    </AttributeReference>
    I am not sure why it is not referencing to the attribute. In your blog, it is saying your code is to set process form. But i am trying to create a request using API's. so, I need some code snippet to populate request dataset. Do you think, this will serve both?
    Thanks for your help.

  • Error while creating authorisation policy using OIM 11g API

    Hi,
    We have a requirement to create ‘Authorization Policies’ (assign Data Constraints, Permissions & Assignments) using OIM 11g API’s.  I am using ‘oracle.iam.authzpolicydefn.api.PolicyDefinitionService & oracle.iam.authzpolicydefn.vo.AuthzPolicy’.  But when I am trying to attach Entity/Feature (User Management) to authorisation policy, it is throwing exception.  Below is the code snippet which I am trying to implement.
    Line1: PolicyDefinitionService policyService = oimClient.getService(PolicyDefinitionService.class);
    Line2: AuthzPolicy authPolicy = new AuthzPolicy();
    Line3: authPolicy.setName("Test Authz Policy");
    Line4: authPolicy.setDisplayName("Test Authz Policy Dsp Name");
    Line5: authPolicy.setDescription("Test Authz Policy Description");
    Line6: Feature feature = oimClient.getService(Feature.class);
    Line7: Action featureAction = feature.getAction(FeatureManagerConstants.Features.USER_MGMT.getId());
    Line8: List<Action> actions = new ArrayList<Action>();
    Line9: actions.add(featureAction);
    Line10: authPolicy.setActions(actions);
    Line11: policyService.createPolicy(authPolicy);
    Exception: oracle.iam.platform.utils.NoSuchServiceException: java.lang.ClassNotFoundException: oracle.iam.authzpolicydefn.api.FeatureDelegate
    The above exception is throwing at Line6.
    Let me know if anyone implemented.
    - Kalyan Mutya

    If you are using JDeveloper , can you able to get class after giving "." .If yes no than it is the problem with the jar file you are using .Check whether you can able to import oracle.iam.authzpolicydefn.api.Feature.
    Thanks ,
    Animesh anand

  • 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

Maybe you are looking for

  • Two iPhones with same Apple ID and want two separate icloud accounts.

    I have two iPhones both of which are set up with the same Apple ID. How can I set up separate icloud accounts for each phone?  My phone has same email for Apple ID and icloud account. I wants wife's phone to have icloud set up with her own email acco

  • Oracle 11g Enterprise vs Satandard Edition

    Dear All, I would be most grateful if you please tell me what are the benefits of Oracle 11g Database Enterprise Edition over Oracle 11g Database Satandard Edition. Don't consider license money. If you would please provide me detailed comparision of

  • Header text not displayed in quotation

    Dear all , I am using standard form for quotation printing but the text i enter in quotation header it is not getting displayed in the standard layout of the quotaion . is there any settings i need to do . pls advise Ramar

  • Login Issues (time crunch!)...

    After changing my account password with the startup disc, my PB rebooted and prompted me to enter the login. However, when I enter in the user name and the new password it does not log me in. (it will not allow me to reset the password again either)

  • Je veux bloquer certaines pages web qui s'affichent toutes seules, même quand mon navigateur n'était pas ouvert.

    Une page web publicitaire s'ouvre toute seule et ouvre même mon navigateur si celui-ci n'était pas ouvert. Je souhaiterait empêcher ces pages web de s'ouvrir en les mettant dans une liste de sites interdits. Mais je ne sais pas si on peut faire cela.