【发布时间】:2011-05-23 15:41:01
【问题描述】:
我正在用 groovy 和 grails 编写一个小型活动日历,我只想显示今天的活动。
def getEventsToday(List events) {
List eventsToday;
Date todayEvening = dateDefault(null, null, null, 23, 59, 59);
Date todayMorning = dateDefault(null, null, null, 0, 0, 0);
eventsToday = events.ByStartTimeBetween(todayEvening, todayMorning);
return eventsToday;
}
我得到以下异常:
groovy.lang.MissingMethodException: No signature of method: EventController.dateDefault() is applicable for argument types: (null, null, null, java.lang.Integer, java.lang.Integer, java.lang.Integer) values: [null, null, null, 23, 59, 59]
我认为 dateDefault() 方法丢失了,但我不知道在哪个类中我能找到这个方法。 也许有人知道我的用例/问题的可能解决方案?
/编辑/ 这也不起作用,因为今天为空: Code http://img7.imagebanana.com/img/mracvfus/Bildschirmfoto20110605um11.32.57.png
感谢您的帮助! whitenexx
【问题讨论】:
-
不确定你从哪里得到 dateDefault,它不是控制器或任何东西上的标准 grails 方法。您必须在 EventController 上定义 dateDefault 方法/闭包才能使其工作(我假设它是创建日期的便捷方法)。顺便说一句,我建议使用 Joda time(有一个 grails 插件)进行日期和时间处理,它比使用 java.util.Date 痛苦得多。
-
我从网上的一个代码示例中得到了这个方法。下面的“clearTime()”方法也不起作用。
标签: java datetime date grails groovy