OIM : Assign AD resource : An error occurred because the Adapters are not compiled : How to compile adapters in OIM

Oracle Identity Manager (OIM) is an account/identity provisioning and reconciliation software and is part of Oracle Identity Management Suite. OIM comes with pre-defined connectors that are used to integrate OIM with other applications like Microsoft Active Directory, Microsoft Exchange, Oracle E-Business Suite, Oracle Databases etc.

  • For Connector basics : Resources, Reconciliation, and Provisioning click here
  • For more information on type of connectors Java vs .NET (dot net) click here
  • For OIM connectors for Microsoft (Active Directory, Exchange, and Windows) click here
  • For OIM-OID connector architecture click here
  • For OIM-Oracle eBusiness Suite connector click here
Note: OIM 11g+ can also be integrated with OID (or LDAP servers) using LDAPSync . More on LDAP Sync here, here, and here
This post covers an issue I encountered while provisioning an account in Microsoft Active Directory from OIM. On provisioning an Account to Microsoft Active Directory, I received an error
An error occurred because the Adapters are not compiled
Exception details: adapter not compiled: adidc populate form field adapter not compiled: adidc populate form field adapter not compiled: adidc populate form field adapter not compiled: adidc populate form field adapter not compiled: adidc populate form field adapter not compiled: adidc prepopulate user full name adapter not compiled: adidc prepopulate user full name adapter not compiled: adidc prepopulate userprincipalname

 

  • More on Adapters in OIM here and here
As adapters in OIM were in status “CODE GEN ERROR …”  so I attempted to compile adapters using OIM Design Console.

 

 

To compile adapter click here , Adapter compilation failed with below error in OIM managed server logs

___

<Oct 19, 2012 5:13:22 PM UTC> <Error> <XELLERATE.ADAPTERS> <BEA-000000> <Class/Method: tcAdpUtils/createAdapter encounter some problems: Code Generation Failed For ‘ADIDC Prepopulate User Full Name’ adapter>
<Oct 19, 2012 5:13:22 PM UTC> <Error> <XELLERATE.ADAPTERS> <BEA-000000> <Class/Method: tcAdpUtils/genXellerateAdapter encounter some problems: /tmp/oracle/oim/adapters/adpADIDCPREPOPULATEUSERPRINCIPALNAME.java (No such file or directory)
java.io.FileNotFoundException: /tmp/oracle/oim/adapters/adpADIDCPREPOPULATEUSERPRINCIPALNAME.java (No such file or directory)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.<init>(FileOutputStream.java:179)
at java.io.FileOutputStream.<init>(FileOutputStream.java:131)
at java.io.FileWriter.<init>(FileWriter.java:73)
at com.thortech.xl.dataobj.util.tcAdpUtils.genXellerateAdapter(tcAdpUtils.java:1367)

_____

Root Cause: File in /tmp/oracle was owned by different user (user other than that running OIM software).

Fix: Change permission (grant Read, Write & Execute ) on /tmp/oracle to user running OIM managed servers. After changing permission , compile adapters in OIM again using design console.

 

 

About the Author Atul Kumar

Oracle ACE, Author, Speaker and Founder of K21 Technologies & K21 Academy : Specialising in Design, Implement, and Trainings.

follow me on:

Leave a Comment:

Not found