Friday, October 26, 2012

OIM 11gR2 - Customizing Self Service User Registration Page

OIM 11gR2 allows you to customize the user interface through customiation@runtime using ADF composer.  Most of the customizations can be done this way including customizing the self service user registration page which is an unauthenticated page.

Here my use case is i would like to add an UDF Social Security Number , so that during the Self Service User Registration user can provide this information.

The assumption is you have already added an UDF for Social Security number in OIM.

Here is how to customize the self service user registration page 

  •   Login to OIM Identity console as Admin User and create a sand box

 

  •    Click on Customize link. Now you can see in the top section of the page that you are in Customization mode.


  • In the same window Paste the OIM Identity Console Sign in URL i.e http://host:port/identity/faces/signin .  You can notice that the Customize mode is  still enabled for you to start customizing the page

  •   In this use case i would like to customize the new user Registration Page. So click on "New User Registration Link" . Once you are on that page fill all the mandatory fields so that the validation of the page will pass and you won't get any validation errors.
  • Now click on View-> Source to go into Source mode for customization
  • If you click on the Basic Information Section , it will take you to "PanelFormLayout" in the source view . This is where i would like to add my UDF
  • Click on AddContent to add an UDF. This will open the component selection dialog box. Navigate down and select Data Component- User Registration and Open it.
 
  • Open the UserV01 Data Component 
  •  

  • Refresh the Page to load all the components , Select SocialSecurityNumber and click Add
  •  
  • Select the Type "ADF Input Text w/Label"
  •  
  • Now you can see the "Social Security Number" added .
  • If you click on the "Edit" link that will allow you to Rearrange the Display Order for the new UDF you have added.
  •  
  • That completes my steps of adding an UDF. Close the Customization mode . Login to Identity Self Service console and Publish the sandbox.
  • Now my New User Registration page will have Social Security Number UDF for the users  to enter values for this field.

10 comments:

Madhusudhanan said...

Hi,

Thanks for your guidance. Really appreciate i have no clue how to do this for more than couple of days.

Now a user can register himself, however on approving the request getting the following error.


[2013-01-31T16:51:17.884+05:30] [oim_server1] [WARNING] [] [oracle.iam.request.impl] [tid: [ACTIVE].ExecuteThread: '14' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: weblogic] [ecid: e171ff3c1743d36a:75a03544:13c9008be1d:-8000-0000000000000642,1:27414:13] [WEBSERVICE_PORT.name: CallbackServicePort] [APP: oim#11.1.2.0.0] [J2EE_MODULE.name: workflowservice] [WEBSERVICE.name: CallbackService] [J2EE_APP.name: oim_11.1.2.0.0] Exception :[[
oracle.iam.request.exception.RequestServiceException: An error occurred while completing approval process instance 8d7d6216-fcbe-48b1-90a5-dce34b3b8492. The corresponding error message is Index: 0, Size: 0.
at oracle.iam.request.impl.ApprovalManager.approvalInstanceComplete(ApprovalManager.java:255)
at oracle.iam.request.impl.ApprovalPolicyServiceImpl.updateApprovalResult(ApprovalPolicyServiceImpl.java:52)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)


Any guidance or pointer will be of great help

Anonymous said...

Do you need the Oracle Web Center component installed? I can create a sandbox in the OIM sysadmin console but i do not see the Edit page link - I'm missing the ADF hook up somewhere. Please advise.

Alexanre Viana said...

I tried to add a lookup field "Department" in the self registration form, but after sandbox activation i got the following runtime exception.
JBO-29000: Unexpected exception caught: oracle.iam.ui.platform.exception.OIMRuntimeException, msg=JBO-29000: Unexpected exception caught: javax.ejb.EJBAccessException, msg=[EJB:010160]Security Violation: User: '' has insufficient permission to access EJB: type=, application=oim#11.1.2.0.0, module=iam-ejb.jar, ejb=tcLookupOperationsIntf, method=getLookupValuesx, methodInterface=Remote, signature={java.lang.String,java.util.Map,java.lang.String}.

Alex Lopez said...

Unfortunately the tcLookupOperationsIntf can only be accessed by an authenticated user. If you need a lookup kind of functionality in the user registration page, you will have to populate the list yourself via a managed bean that has bindings to the field you want to show in the User Self Registration page.

Anonymous said...

Hi Alex, Can you please elaborate on how to go about it or any document?

Thanks

Anonymous said...

Hi, I already have the prepop plugin adapter that use in application instance form.
And now I wish to prepopulate a default value at the self-registration form field. How i able to do achieve this?

saml said...

We are trying to create attestation process in OIM 11gr2. the requirement is to run attestation on roles (to check who all are member of that particular role). Actually there are roles associated with each users which have to be reconciled from DB.(there are two tables in DB one with user detail and other child table contains role associated with each user). requirement is get get attestation reports based on roles.

Anonymous said...

Has anyone found a work around for the OIM limitations around trying to add a custom LOV/DropDown to the Self Registration Page? It seems that there is an enhancement to allow this functionality but I don't see Oracle releasing this OOTB functionality anytime soon. All I need to do is add any kind of "optional" field but b/c the Self Registration page requires the user to be "authenticated" this cannot happen. There are zero docs on how to create a managed bean for this so any starters or ideas would be awesome!

manojmania said...

Hi,

I am facing an issue while approving a Self Registration request. The error says the approver has no permission on the request. During the request the user would provide the Approver email Id in the form. Can you kindly help.

Thanks
Manoj

MAGT_JMCC said...

Hi, do you have a post for customizing Login page?
Thanks