1.异常报错
今天测试一个adapter service时batchInsert_ET_U17_860_DETAIL,因为SHIP_DATE是空值,导致插入异常报错.
[ART.117.4002] Adapter Runtime (Adapter Service): Unable to invoke adapter service Gtk_Fitbit.common.adapter.db.function:batchInsert_ET_U17_860_DETAIL. |
IllegalArgument Exception for field: SHIP_DATE. Error: java.lang.IllegalArgumentException: Timestamp format must be yyyy-mm-dd hh:mm:ss[.fffffffff] |
Caused by: javax.resource.ResourceException: IllegalArgument Exception for field: SHIP_DATE. Error: java.lang.IllegalArgumentException: Timestamp format must be yyyy-mm-dd hh:mm:ss[.fffffffff] |
查看这个异常的adapter service中这个参数SHIP_DATE在数据库中是Date类型.在service设置了java.lang.String类型,
我修改了这个SHIP_DATE在service日期类型的Expression赋值to_date(?,'yyyy-MM-dd HH24:mi:ss'),并修改Input File Type的类型为java.lang.Object,具体如下图:
这样修改后,再次测试,数据库日期类型为空的数据,就正常插入了,结果如下图: