2014-10-10 56 views
0

映射日期拋出下面是數據映射器錯誤而使用的DataMapper在騾

dateTimeFormatter =新java.text.SimpleDateFormat中(「YYYY-MM-dd'T'HH的映射的部分:MM:SS 「); output.Date_of_Rate_Float__c =(isnull(input.Date_of_Rate_Float)?null:dateTimeFormatter.format(input.Date_of_Rate_Float)); output.Loan_Create_Date__c =(isnull(input.loan_create_date)?null:dateTimeFormatter.format(input.loan_create_date)); output.Estimated_Closing_Date__c =(isnull(input.estimated_closing_date)?null:dateTimeFormatter.format(input.estimated_closing_date));

,這將引發以下異常

1. DateConverter does not support default String to 'Date' conversion. (org.apache.commons.beanutils.ConversionException) 
    org.apache.commons.beanutils.converters.DateTimeConverter:468 (null) 

Root Exception stack trace: 
org.apache.commons.beanutils.ConversionException: DateConverter does not support default String to 'Date' conversion. 
    at org.apache.commons.beanutils.converters.DateTimeConverter.toDate(DateTimeConverter.java:468) 
    at org.apache.commons.beanutils.converters.DateTimeConverter.convertToType(DateTimeConverter.java:343) 
    at org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:156) 
    at org.apache.commons.beanutils.ConvertUtilsBean.convert(ConvertUtilsBean.java:544) 
    at com.mulesoft.datamapper.transform.converter.ScalarValueConversion.convert(ScalarValueConversion.java:126) 
    at com.mulesoft.datamapper.transform.DataRecordContext.put(DataRecordContext.java:87) 
    at com.mulesoft.datamapper.transform.DataRecordContext.put(DataRecordContext.java:24) 
    at org.mvel2.optimizers.impl.refl.ReflectiveAccessorOptimizer.optimizeSetAccessor(ReflectiveAccessorOptimizer.java:308) 
    at org.mvel2.compiler.CompiledAccExpression.setValue(CompiledAccExpression.java:54) 
    at org.mvel2.ast.DeepAssignmentNode.getReducedValueAccelerated(DeepAssignmentNode.java:92) 
    at org.mvel2.MVELRuntime.execute(MVELRuntime.java:85) 
    at org.mvel2.compiler.CompiledExpression.getDirectValue(CompiledExpression.java:123) 
    at org.mvel2.compiler.CompiledExpression.getValue(CompiledExpression.java:119) 
    at org.mvel2.compiler.CompiledExpression.getValue(CompiledExpression.java:113) 
    at org.mvel2.MVEL.executeExpression(MVEL.java:942) 
    at org.mule.el.mvel.MVELExpressionExecutor.execute(MVELExpressionExecutor.java:50) 
    at com.mulesoft.datamapper.transform.DataMapperExpressionLanguage.evaluate(DataMapperExpressionLanguage.java:106) 
    at com.mulesoft.datamapper.transform.MelRecordTransform.transform(MelRecordTransform.java:56) 
    at org.jetel.component.Reformat.execute(Reformat.java:273) 
    at org.jetel.graph.Node.run(Node.java:465) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
    at java.lang.Thread.run(Thread.java:724) 

******************************************************************************** 

我'無法找到的是什麼導致這個例外,我想尋求解決此問題的幫助。

預先感謝您

回答

0

它看起來像一個空值傳遞給format方法。要了解如何使其可以「無效」,您可以查看Format a Date, allowing null

+0

的示例我檢查了發送到Data Mapper的數據,它沒有任何空值,並且如果我刪除了數據中的Date Formatter它不會拋出錯誤。你知道爲什麼日期格式化程序導致錯誤。 – madhu 2014-10-14 10:12:36