[英]How do i check null pointer exception in DATE data type
我們有Talend數據集成工具,該工具在將信息從源發送到目標系統時使用蝕代碼。 遇到錯誤
Exception in component tMap_1
java.lang.NullPointerException
at bigdata.copy_of_readsysproandsendmail_0_1.Copy_of_ReadSysproAndSendMail.tJDBCInput_2Process(Copy_of_ReadSysproAndSendMail.java:1937)
at bigdata.copy_of_readsysproandsendmail_0_1.Copy_of_ReadSysproAndSendMail.runJobInTOS(Copy_of_ReadSysproAndSendMail.java:5086)
at bigdata.copy_of_readsysproandsendmail_0_1.Copy_of_ReadSysproAndSendMail.main(Copy_of_ReadSysproAndSendMail.java:4885)
at bigdata.copy_of_readsysproandsendmail_0_1.Copy_of_ReadSysproAndSendMail.tJDBCInput_2Process(Copy_of_ReadSysproAndSendMail.java:2098)
at bigdata.copy_of_readsysproandsendmail_0_1.Copy_of_ReadSysproAndSendMail.runJobInTOS(Copy_of_ReadSysproAndSendMail.java:5355)
at bigdata.copy_of_readsysproandsendmail_0_1.Copy_of_ReadSysproAndSendMail.main(Copy_of_ReadSysproAndSendMail.java:5154)
Job Copy_of_ReadSysproAndSendMail ended at 23:16 03/10/2016. [exit code=0]
輸入:
日期數據類型是tmap組件中空值的來源
DNDB date type(source) ---->row1.DNDB(output) is Date data type. both are nullable.
我們嘗試過:但是對我們沒有用。
避免為空
row1.DNDB == null?“ null”:row1.DNDB
row1.DNDB==null?"null":row1.DNDB
無法工作:您正在為輸出值分配“ null”(帶雙引號的字符串)或row1.DNDB,該日期應為日期。 您將在編譯中出現強制轉換異常。
您可以嘗試:
Relational.ISNULL(row1.DNDB)?null:row1.DNDB
如果你要一個Date返回類型; 要么
Relational.ISNULL(row1.DNDB)?"null":TalendDate.formatDate("yyyy-MM-dd HH:mm:ss",row1.DNDB)
如果您想要兩個值的String返回類型。
還要檢查您的輸出列是否標記為可空(復選框)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.