There are a number of ways to resolve this issue. Read the instructions provided here to have a better understanding on date format related errors.
INSERT INTO table1 values (to_date('2005/03/01 10:05:13','YYYY/MM/DD HH:MI:SS'))
as part of an INSERT query. However with IBM Security Directory
Integrator, you can only do something like this in the output map: ret.value = '2005/03/01 10:05:13';
But if Oracle fails with the following error: java.sql.SQLException: ORA-01830:
The Date
Format picture ends before converting entire input string.When dates are supplied as strings (which is what you are doing here) the IBM® Security Directory Integrator JDBC Connector will attempt to parse the data using the pattern provided in its Date Format configuration parameter, as explained in the Reference section of the product documentation. To debug your problem: What is your Data Pattern configuration? Find out how IBM Security Directory Integrator sees this field by checking in the schema tab of the Connector. A fair guess is that your JDBC driver will convert the Oracle Data type into a java.sql.TimeStamp or java.sql.Date type (and note that there are differences between java.util.Date and java.sql.Date, in terms of precision for example). In the case, for example, of a java.sql.Timestamp type, try specifying:
ret.value = java.sql.Timestamp(java.util.Date().getTime());
and see if this helps. Then you will be able to use: ret.value = java.sql.Timestamp(system.parseDate(work.getString("yourDate"),
"yyyyMMddHHmmssz").getTime());
If none of the above helps,
run the Connector in detailed log mode and see whether the Connector
is able to get the schema from the database. If not, the Connector
does not use prepared statements, which makes it less efficient and
more error-prone, so you'll have to make sure that the Connector's schema configuration
parameter is set correctly.