簡體   English   中英

如何檢查DATE數據類型中的空指針異常

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM