JDBC Driver won't Start after upgrading to IDM 3.5

  • 3286367
  • 04-Jun-2007
  • 14-Jan-2014

Environment

Novell Identity Manager Driver- JDBC Driver
Novell Identity Manager Identity Manager 3.5

Situation

Upgraded from Novell Identity Manager 3.01 to 3.5.
Upgraded the JDBC Driver.
Now getting NullPointerException errors during synchronization.
Engine Trace:
05/07/07 13:21:02.150]:JDBC -> PT:


DirXML Driver for JDBC
Novell, Inc.



java.lang.NullPointerException

java.lang.NullPointerException
at com.novell.nds.dirxml.driver.jdbc.util.event.JDBCEvent.GetPerpetrator(Unknown Source)
at com.novell.nds.dirxml.driver.jdbc.util.event.JDBCEvent.getPerpetratorsAsString(Unknown Source)
at com.novell.nds.dirxml.driver.jdbc.JDBCTriggeredPublicationShim.appendCustomEventInfo(Unknown Source)
at com.novell.nds.dirxml.driver.jdbc.JDBCTriggeredPublicationShim.appendModifyElement(Unknown Source)
at com.novell.nds.dirxml.driver.jdbc.JDBCTriggeredPublicationShim.handleModify(Unknown Source)
at com.novell.nds.dirxml.driver.jdbc.JDBCTriggeredPublicationShim.appendEvent(Unknown Source)
at com.novell.nds.dirxml.driver.jdbc.JDBCTriggeredPublicationShim.appendEvents(Unknown Source)
at com.novell.nds.dirxml.driver.jdbc.JDBCTriggeredPublicationShim.handleEventGroup(Unknown Source)
at com.novell.nds.dirxml.driver.jdbc.JDBCTriggeredPublicationShim.waitForEvents(Unknown Source)
at com.novell.nds.dirxml.driver.jdbc.JDBCPublicationShim.pollImpl(Unknown Source)
at com.novell.nds.dirxml.driver.jdbc.JDBCPublicationShim.pollLoop(Unknown Source)
at com.novell.nds.dirxml.driver.jdbc.JDBCPublicationShim.start(Unknown Source)
at com.novell.nds.dirxml.driver.jdbc.JDBCPublicationProxy.start(Unknown Source)
at com.novell.nds.dirxml.remote.loader.Driver.run(Driver.java:851)
at java.lang.Thread.run(Thread.java:595)




Remote Loader Trace shows that there are several NULL values in data fields.
Ex.DirXML: [05/07/07 13:21:02.04]: TRACE: record_id: 20734623
DirXML: [05/07/07 13:21:02.04]: TRACE: table_key: 'EMEMP#=2005134'
DirXML: [05/07/07 13:21:02.04]: TRACE: status: 'N'
DirXML: [05/07/07 13:21:02.04]: TRACE: event_type: 2; update field
DirXML: [05/07/07 13:21:02.04]: TRACE: perpetrator: NULL
DirXML: [05/07/07 13:21:02.04]: TRACE: table_name: 'cims_emp'
DirXML: [05/07/07 13:21:02.04]: TRACE: column_name: 'emtdat'
DirXML: [05/07/07 13:21:02.04]: TRACE: old_value: NULL
DirXML: [05/07/07 13:21:02.04]: TRACE: new_value: NULL

We also see that these Null values are OK according to the definitions in the remote loader trace:
Ex.
DirXML: [05/07/07 13:19:41.86]: TRACE: Name: 'perpetrator'
DirXML: [05/07/07 13:19:41.86]: TRACE: SQL Type: java.sql.Types.VARCHAR
DirXML: [05/07/07 13:19:41.86]: TRACE: Native Type: varchar
DirXML: [05/07/07 13:19:41.86]: TRACE: Parameter Type: IN
DirXML: [05/07/07 13:19:41.86]: TRACE: Length: 64
DirXML: [05/07/07 13:19:41.86]: TRACE: Position: 6
DirXML: [05/07/07 13:19:41.86]: TRACE: Nullable: YES
Search: unkown source GetPerpetrator getPerpetratorsAsString appendCustomEventInfo 851 595 -851 -595

Resolution

This is an issue with the Perpetrator field having a NULL value. Patch IDM 3.5 JDBC Driver Version 3.5.1 20070430 has the fix for this.  Download the current JDBC Driver.
Workaround:
Place a value in the Perpetrator field. This will allow synchronization to occur.