Skip to main content

Adding UDF (User Defined Field) on create user page OIM 11g R2 PS1:-


  1.   Login to Sysadmin console and create a Sandbox and activate it. Click on Form Designer and search for user form.

    2.      Create a new field of desired type.



    3.      Provide the Required Values for UDF creation and click save and close. UDF field will be added then publish the sand box.



    4.      Login to Identity console now and create another sandbox and activate it. After sandbox is activated click on users link and the click on create user.
    5.      Provide the mandatory values on the form and then click the customize button on top. Select source from the view.



    6.      Select the panel where the field has to be added. Select panel form lay out click add content. Select Data component Catalog from the box.


    7.      Select UserVO from the bottom.



    8.      Select the newly added UDF and add it with the required input.



    9.      Close the customization and publish the sandbox. UDF is added to the create user Field.



    10.   Same customization has to be done on modify user and View user page by opening those pages and doing the same process (In case of View user rather than Data Component – Catalog Data component- Manage Users has to be selected).
    11.   After Adding the field on Edit user page it will still not allow to submit any change on the field. For that process before publishing  the sandbox please export it.
    12.   After Exporting the sandbox extract it and open userModifyForm.jsff.xml from <SandBox>\oracle\iam\ui\runtime\form\view\pages\mdssys\cust\site\site location.
    13.   Add two properties in the xml :- valueChangeListener="#{pageFlowScope.cartDetailStateBean.attributeValueChangedListener}"
    autoSubmit="true"’



    14.    Zip it again and import this sandbox. Publish the sandbox and it will allow changes to be submitted on that field.

Comments

  1. Hi Shikhar,
    This is so good Your document helped me a lot...
    Really this is working for me... But at lat I am facing bit problem with converting Zip. Do we need to have licensed software to do (ZIP).

    ReplyDelete
  2. Hi Praveen.. You can use winzip or winrar... I have done it with 7zip which is also free.

    ReplyDelete
  3. Hi Shikhar,
    I am getting fallowing error
    Import Sandbox Failed

    oracle.mds.exception.MDSRuntimeException: MDS-01161: Reference "/sandbox_icici_sd (2)/mdssys/sandbox/active_mdsSandboxMetadata.xml" has an invalid character "(". MDS-01161: Reference "/sandbox_icici_sd (2)/mdssys/sandbox/active_mdsSandboxMetadata.xml" has an invalid character "(".

    ReplyDelete
  4. It is clearly saying that active_mdsSandboxMetadata.xml has been changed and invalid character is added. Try to export again from OIM and replace active_mdsSandboxMetadata.xml file from new export to this export and zip it again.

    ReplyDelete
    Replies
    1. Hi Shikhar,

      This is very good document.....

      When I try to add Custom UDF's to User form (SysadminConsole--Users)

      I am getting following Error

      Error =DCInvokeMethod.null datacontrol
      Error =Error returned is: DCInvokeMethod.null datacontrol
      Error =JBO-25003: Object FormServiceAMDataControl of type DataControl is not found

      Delete
    2. Hi Krisha,
      could you please provide how did you fixed the issue? I've the identical issue.

      thanks a lot for your support.
      Patrizia

      Delete
  5. Hi Shikar.. I 'm trying to create the UDF with Default Value. But that Value is not getting pop-up while creating or modifying User. However it gets displays while viewing. Can u pls help how can I accomplish it?

    ReplyDelete
  6. Hi, you need to create the UDF with the default value. I tried one in my environment and it works. I created one text UDF (Nationality) with default value Indian and added it to all the pages (Create, Modify and View ) I can see the default value on every page.

    ReplyDelete
  7. hi , i need to import objects into r2ps2 from 11gr1 then need to create udf can you please explain the process

    Thanks,
    Lavanya

    ReplyDelete
  8. This comment has been removed by the author.

    ReplyDelete
  9. I have created the UDF without adding the below two preopeties and published the sandbox then how I can add below properties.
    Add two properties in the xml :- valueChangeListener="#{pageFlowScope.cartDetailStateBean.attributeValueChangedListener}"
    autoSubmit="true"’

    Please suggest

    ReplyDelete
  10. Hi Shikhar..

    I am Trying to Create a Dropdown in 11g R2ps1 . i hav created a lookup and set that lookup as dropdown on Catalog page with "YES" and "NO" option but i don which property should i change after exporting sandbox ... as when i change vale from YES to NO and tries to click on Apply button ... its not enabled

    ReplyDelete

Post a Comment

Popular posts from this blog

Developing Prepopulate Adapter with OIM 11g R2

1.      Prepopulate Adapter in OIM uses the plugin point oracle.iam.request.plugins.PrePopulationAdapte r. 2.      Write the Java code which returns the value which has to be populated on the form. 3.      This code will implement the plugin point oracle.iam.request.plugins.PrePopulationAdapte r. Code Snippet: - package com.oracle.oim.utility.eventhandler; import java.io.Serializable; import java.util.Iterator; import java.util.List; import java.util.logging.Logger; import oracle.iam.identity.exception.NoSuchUserException; import oracle.iam.identity.exception.UserLookupException; import oracle.iam.identity.usermgmt.api.UserManager; import oracle.iam.identity.usermgmt.vo.User; import oracle.iam.platform.Platform; import oracle.iam.platform.authz.exception.AccessDeniedException; import oracle.iam.request.exception.RequestServiceException; import oracle.iam.request.vo.Beneficiary; import oracle.iam.request.vo.RequestData; public c

OIM Tuning

Application Module tuning is a critical setting which will affect the UI performance. Following are the recommended application module settings for OIM and these are already set out-of-box (OOB) in later releases of OIM 11g R2. Ensure that these settings are implemented as recommended in your environment. -Djbo.ampool.doampooling=true -Djbo.ampool.minavailablesize=1 -Djbo.ampool.maxavailablesize=120 -Djbo.recyclethreshold=60 - Djbo.ampool.timetolive=-1 -Djbo.load.components.lazily=true - Djbo.doconnectionpooling=true -Djbo.txn.disconnect_level=1 - Djbo.connectfailover=false -Djbo.max.cursors=5 - Doracle.jdbc.implicitStatementCacheSize=5 - Doracle.jdbc.maxCachedBufferSize=19 open DOMAIN_HOME/bin/setDomainEnv.sh file for the WebLogic Server instance.find these lines: JAVA_OPTIONS="${JAVA_OPTIONS}" export JAVA_OPTIONS and change it to: JAVA_OPTIONS="-Djbo.ampool.doampooling=true -Djbo.ampool.minavailablesize=1 -Djbo.ampool.maxavailablesize=120 -D

Creating Role through OIM API - 11gR2

package com.oim.utilities; import java.util.HashMap; import oracle.iam.identity.rolemgmt.api.RoleManager; import oracle.iam.identity.rolemgmt.api.RoleManagerConstants; import oracle.iam.identity.rolemgmt.vo.Role; import oracle.iam.platform.OIMClient; public class RoleManagement  { static RoleManager roleManager=null; static OIMClient client=null; @SuppressWarnings("null") public static void createRole(String roleName){ System.out.println("RoleManagement :: createRole :: role name is "+roleName); try  { if (roleName!=null) { HashMap<String, Object> mapAttrs = new HashMap<String, Object>();; mapAttrs.put(RoleManagerConstants.ROLE_NAME, roleName); mapAttrs.put(RoleManagerConstants.ROLE_DISPLAY_NAME,roleName); mapAttrs.put(RoleManagerConstants.ROLE_DESCRIPTION, roleName); Role role = new Role(mapAttrs); // Initialising the OIM Connection client=ClientOIM.initialise(); System.out.println("RoleManagemen