Admin Task Modification: Java NullPointerException due to JNDI Case Sensitivity
search cancel

Admin Task Modification: Java NullPointerException due to JNDI Case Sensitivity

book

Article ID: 54796

calendar_today

Updated On:

Products

CA Identity Manager CA Identity Governance CA Identity Portal CA Identity Suite

Issue/Introduction

When attempting to modify or save an Admin task in the Identity Manager Management Console, the operation may fail with a Java exception.

This typically occurs even if datasource connectivity tests within the application server (e.g., WebSphere) indicate no issues.

Environment

Identity Manager 14.x

Cause

The following errors are observed in the SystemOut.log or task persistence logs:

  • ERROR [ims.Task Persistence] The jdbc/idm JDBC Pool and data source is not deployed or configured.
  • ERROR [ims.Task Persistence] DBTaskDAO.saveTaskSessionEvent - Exception saving task session: java.lang.NullPointerException
  • ExceptionUtil E CNTR0020E: Non-application exception occurred while processing method "saveObject" on bean "TaskPersistenceEJB".
  • LocalTranCoor E WLTC0017E: Resources rolled back due to setRollbackOnly() being called.

The JNDI (Java Naming and Directory Interface) name is case-sensitive. If the Data Source is configured with a different case (e.g., jdbc/IDM) than what the Identity Manager environment expects (e.g., jdbc/idm), the Task Persistence provider will fail to locate the connection pool, resulting in a NullPointerException.

Resolution

To resolve the exception, ensure the JNDI name matches exactly between the application server and the Identity Manager configuration:

  1. Check Management Console: Log into the Identity Manager Management Console and verify the JNDI name defined under Environments > [Environment Name] > Database.
  2. Verify Application Server: Log into the application server console (e.g., WebSphere Integrated Solutions Console).
  3. Correct Case Sensitivity: Navigate to the JDBC providers and Data Sources. Ensure the JNDI name is set to lowercase jdbc/idm (or matches exactly what was found in Step 1).
  4. Restart Services: Restart the Identity Manager environment or the application server to apply the changes.