If you make any change to a system property of OIM by using any method other than from the Advanced Administration, you must run purge cache to get the changes reflected in Oracle Identity Manager (Caching in OIM 11g is defined under file $ORACLE_HOME/server/metadata/db/oim-config.xml).


How to run Purge Cache ?
Use – $ORACLE_HOME/server/bin/PurgeCache.[sh|bat] [category_name]  (To purge entire cache use All for category name. ORACLE_HOME is OIM install directory)

[oracle@server home]$ cd ORACLE_HOME/server/bin
[oracle@server bin]$ ./PurgeCache.sh All
[Enter the admin username:] xelsysadm
[Enter the admin password:] XXXXXX
[Enter the service url : (i.e.: t3://oimhostname:oimportno)]  t3://oimserver:14000

In my case PurgeCache failed for OIM 11g with error message
Exception in thread “main” javax.security.auth.login.LoginException: unable to find LoginModule class: weblogic.security.auth.login.UsernamePasswordLoginModule
at javax.security.auth.login.LoginContext.invoke(LoginContext.java:808)
at javax.security.auth.login.LoginContext.access$000(LoginContext.java:186)
at javax.security.auth.login.LoginContext$4.run(LoginContext.java:683)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.login.LoginContext.invokePriv(LoginContext.java:680)
at javax.security.auth.login.LoginContext.login(LoginContext.java:579)
at Thor.API.Security.LoginHandler.weblogicLoginHandler.login(weblogicLoginHandler.java:61)
at oracle.iam.platform.OIMClient.login(OIMClient.java:134)
at oracle.iam.platform.OIMClient.login(OIMClient.java:129)
at oracle.iam.platformservice.utils.PurgeCache.main(PurgeCache.java:67)


Fix : Looked at documentation here  and found that wlfullclient.jar must be in the classpath at $WL_HOME/server/lib


How to create wlfullclient.jar ?

cd $MW_HOME/wlserver_10.3/server/lib
$MW_HOME/jdk160_18/bin/java -jar $MW_HOME/modules/com.bea.core.jarbuilder_1.5.0.0.jar


What is WebLogic Full Client ?

WebLogic full client (using wlfullclient.jar) is a Java RMI client that uses Oracle’s proprietary T3 protocol to communicate with WebLogic Server.

Note: Prior to WebLogic Server 10.0, the weblogic.jar file was required for T3 and WLS-IIOP client applications to provide WebLogic Server-specific value-added features. For WebLogic Server 10.x and later releases, stand-alone client applications requiring these features use the wlfullclient.jar file instead of the weblogic.jar.