1
votes

I have a little problem with my project:

URI /TimeKeeper/calendar/show

Class groovy.lang.MissingMethodException

Message No signature of method: static de.jollyday.util.CalendarUtil.create() is applicable for argument types: (java.util.GregorianCalendar) values: [java.util.GregorianCalendar[time=1406897280000,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="Europe/Berlin",offset=3600000,dstSavings=3600000,useDaylight=true,transitions=143,lastRule=java.util.SimpleTimeZone[id=Europe/Berlin,offset=3600000,dstSavings=3600000,useDaylight=true,startYear=0,startMode=2,startMonth=2,startDay=-1,startDayOfWeek=1,startTime=3600000,startTimeMode=2,endMode=2,endMonth=9,endDay=-1,endDayOfWeek=1,endTime=3600000,endTimeMode=2]],firstDayOfWeek=2,minimalDaysInFirstWeek=4,ERA=1,YEAR=2014,MONTH=7,WEEK_OF_YEAR=31,WEEK_OF_MONTH=0,DAY_OF_MONTH=1,DAY_OF_YEAR=213,DAY_OF_WEEK=6,DAY_OF_WEEK_IN_MONTH=1,AM_PM=1,HOUR=2,HOUR_OF_DAY=14,MINUTE=48,SECOND=0,MILLISECOND=0,ZONE_OFFSET=3600000,DST_OFFSET=3600000]] Possible solutions: create(), create(java.util.Calendar), create(int, de.jollyday.config.Fixed), create(int, int, int), create(int, int, int, org.joda.time.Chronology), grep()

And thats my code where the exception is thrown:

import static java.util.Calendar.*
import de.jollyday.*
import de.jollyday.util.*

class DayReport {
    def day
    def records

    def getHolidayName() {
        def m = HolidayManager.getInstance(HolidayCalendar.GERMANY)
        def holidays = m.getHolidays(day.get(YEAR), 'nw')
        holidays.find {
            CalendarUtil.create(day) == it.date
        }?.description
    }

    def isHoliday() {
        def m = HolidayManager.getInstance(HolidayCalendar.GERMANY)

        def create = CalendarUtil.create(day)
        println "DayReport isHoliday: ${create.getClass()}"
        m.isHoliday(create, 'nw')
    }

...

Can somebody tell me what is wrong?

Thanks :)

1
weird... try casting your day to Calendar: CalendarUtil.create(day as Calendar)injecteer
this isn't working as well. I fixed it with org.joda.time.LocalDate instead of CalendarUtil.humbug

1 Answers

1
votes
def getHolidayName() {
    def m = HolidayManager.getInstance(HolidayCalendar.GERMANY)
    def holidays = m.getHolidays(day.get(YEAR), 'nw')
    holidays.find {
        new LocalDate(day.getTime()) == new LocalDate(it.date)
    }?.description
}

def isHoliday() {
    def m = HolidayManager.getInstance(HolidayCalendar.GERMANY)
    def localDate = new LocalDate(day.getTime())
    println "localDate: " + localDate
    m.isHoliday(localDate, 'nw')
}

That's the solution