2016-06-30 24 views
0

Mit dem folgenden JSTL erwartetVergleich Datum in JSTL nicht wie

(Die Datumseingabe stammt aus einer messages.properties-Datei in dem vorgegebenen Muster)

<jsp:useBean id="now" class="java.util.Date" /> 
Current: ${now}<br/> 

<c:catch> 
    <fmt:parseDate value="${tickerBegin}" pattern="yyyy-MM-dd HH:mm:ss" var="tickerBeginDate" /> 
    <fmt:parseDate value="${tickerEnd}" pattern="yyyy-MM-dd HH:mm:ss" var="tickerEndDate" /> 
</c:catch> 
${tickerBegin} parsed to ${tickerBeginDate}<br/> 
${tickerEnd} parsed to ${tickerEndDate}<br/> 

${tickerEndDate ge nowDate}<br/> 
${tickerEndDate.time ge nowDate.time}<br/> 

Ich erhalte diese Ausgabe:

Current: Thu Jun 30 17:05:10 CEST 2016 
2016-06-30 14:00:00 parsed to Thu Jun 30 14:00:00 CEST 2016 
2017-02-04 03:32:12 parsed to Sat Feb 04 03:32:12 CET 2017 
false 
false 

Warum funktioniert keiner dieser Vergleiche wie erwartet? Offensichtlich muss jedes Datum im Jahr 2017 größer sein als jedes Datum im Jahr 2016?

Antwort

0

Die Variable nowDate ist niemals in Ihrem Code definiert. Versuchen Sie

+0

Nun, ich denke, das ist, was Sie als routinemäßig geblendet ... Vielen Dank –