When running the RoleDefGenerator utility for a dynamic connector created using Connector Xpress, the process fails with a java.lang.NullPointerException.
D:\Program Files (x86)\CA\Identity Manager\IAM Suite\Identity Manager\tools\RoleDefinitionGenerator\bin> RoleDefGenerator.bat -d IM -h XXX -u etaadmin -n "Sybase ASE"Exception Stack Trace or error:
Created folder D:\Program Files (x86)\CA\Identity Manager\IAM Suite\Identity Manager\tools\RoleDefinitionGenerator\bin\.\META-INF
Obtaining metadata doc...
Preparing data model...
Generating IM_FrameworkXml
Generating IM_ManagedObjectXml
Generating IM_ResourceBundle
Generating IM_JIAMToIMMappingXml
generateRoleDef called for IM_AccountManagementRoleDefXml
Generating search and list screens...
Generating account screens...
Generating account template screens...
java.lang.NullPointerException at com.ca.iam.roledefgen.IMObjectGenerator.determineAttributeStyle(IMObjectGenerator.java:4965)
Identity Manager v14.5, v15
The NullPointerException occurs because the metadata definitions are missing the expected Account Container class named eTDYNAccountContainer.
When the metadata specifies a container named with a generic identifier (e.g., eTDYNContainer001) instead of eTDYNAccountContainer, the RoleDefGenerator fails to locate the expected attribute mapping during screen generation.
To resolve this issue, update the metadata definitions in Connector Xpress to include the expected container class name:
Open Connector Xpress and load the dynamic connector project.
Add a new container named Account Container that handles the User Account contained class.
Deploy the updated metadata to the Provisioning Server.
Open the connector metadata editor:
Locate the newly created container class (generated by default as eTDYNContainer001).
Rename the class from eTDYNContainer001 to eTDYNAccountContainer.
Save and redeploy the metadata.
Rerun the RoleDefGenerator command.