簡體   English   中英

在java.util.Date類型上找不到方法toGregorianCalendar()

[英]Method toGregorianCalendar() cannot be found on java.util.Date type

以下是Spring集成流程的摘錄,其中我們遇到了錯誤,在某些機器上通過了流量測試用例,但在某些系統上卻失敗了:

Spring集成流程:

<integration:chain input-channel="X" output-channel="Y">
    <integration:transformer expression="'{1:F21XXXX}{4:{1XX:' +  new java.text.SimpleDateFormat('yyMMddHHmm').format(payload.arrivalDateTime.toGregorianCalendar().getTime()) + '}{444:' + payload.statusDetail.etc + '}}'"/>
 </integration:chain>

錯誤:

錯誤02 / Feb / 2017 09:35:08,608 [org.springframework.jms.listener.DefaultMessageListenerContainer#48-1] springframework.integration.handler.LoggingHandler-org.springframework.expression.spel.SpelEvaluationException:EL1004E:(pos 88) :方法調用:在org.springframework.expression.spel.ast的java.util.Date類型上的org.springframework.expression.spel.ast.MethodReference.findAccessorForMethod(MethodReference.java:185)上找不到方法toGregorianCalendar()。 MethodReference.getValueInternal(MethodReference.java:107)

我們不確定丟失了什么,我們在所有機器上檢查了Java(1.6.0_35)/ maven(3.0.3)及其相同。 任何幫助將不勝感激。 謝謝。

方法toGregorianCalendar()在類XMLGregorianCalendar中。 從異常可以明顯看出,spring el正在嘗試為Date對象調用toGregorianCalendar()。 我猜你的問題是,對於某些測試用例,您將payload.arrivalDateTime作為Date對象而不是XMLGregorianCalendar對象。

https://docs.oracle.com/javase/7/docs/api/javax/xml/datatype/XMLGregorianCalendar.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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