IAM-3010196 Error while Trying to Modify a Role's Name with RoleManager.modify API

(Doc ID 1530749.1)

Last updated on MARCH 08, 2017

Applies to:

Identity Manager - Version 11.1.2 and later
Information in this document applies to any platform.


Having issues changing a role's name through the RoleManager's API in our R2 installation.
- This used to work on our previous 11g R1 implementation.

Installed the new 11g R2 Installation, then this error started happening with the new api.


// setup
System.setProperty("java.security.auth.login.config", "/path/to/authwl.conf");
System.setProperty("OIM.AppServerType", "weblogic");
System.setProperty("APPSERVER_TYPE", "wls");
Hashtable env = new Hashtable();
env.put(OIMClient.JAVA_NAMING_FACTORY_INITIAL, "weblogic.jndi.WLInitialContextFactory");
env.put(OIMClient.JAVA_NAMING_PROVIDER_URL, "t3://host:14000");
client = new OIMClient(env);

RoleManager roleManager = client.getService(RoleManager.class);

// do grant role
HashMap attrs = new HashMap();
attrs.put(RoleManagerConstants.ROLE_NAME, "newRoleName");
Role newRole = new Role(attrs);
roleManager.modify(RoleManagerConstants.ROLE_NAME, "roleName", newRole);


OIM 11.1.2

Error in log is:

oracle.iam.identity.exception.ValidationFailedException: IAM-3010196:The RDN Role Name of the role is being modified, or the role container has changed, without referential integrity being enabled on target LDAP directory.:Role Name
  at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:234)
  at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:348)
  at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:259)
  at oracle.iam.identity.rolemgmt.api.RoleManager_ogut7n_RoleManagerRemoteImpl_1036_WLStub.modifyx(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.RemoteBusinessIntfPro





Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms