openhab / openhab1-addons

Add-ons for openHAB 1.x

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[caldav] NCDF org/threeten/bp/temporal/TemporalAdjuster

5iver opened this issue · comments

OH S1618 (did not occur in S1615). Likely caused by #5860, which looks to be the only changes to the binding between these builds. This occurs on startup...

2019-06-20 16:36:27.477 [ERROR] [org.quartz.core.JobRunShell] - Job event-reloader.scottandlisa threw an unhandled Exception: 
java.lang.NoClassDefFoundError: org/threeten/bp/temporal/TemporalAdjuster
        at net.fortuna.ical4j.model.TimeZoneRegistryImpl.<init>(TimeZoneRegistryImpl.java:125) ~[?:?]
        at net.fortuna.ical4j.model.TimeZoneRegistryImpl.<init>(TimeZoneRegistryImpl.java:116) ~[?:?]
        at net.fortuna.ical4j.model.DefaultTimeZoneRegistryFactory.createRegistry(DefaultTimeZoneRegistryFactory.java:48) ~[?:?]
        at net.fortuna.ical4j.data.CalendarBuilder.<init>(CalendarBuilder.java:105) ~[?:?]
        at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:339) ~[?:?]
        at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:325) ~[?:?]
        at org.openhab.io.caldav.internal.job.EventReloaderJob.execute(EventReloaderJob.java:141) ~[?:?]
        at org.quartz.core.JobRunShell.run(JobRunShell.java:202) [185:org.openhab.core.scheduler:2.5.0.201906200304]
        at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) [185:org.openhab.core.scheduler:2.5.0.201906200304]
Caused by: java.lang.ClassNotFoundException: org.threeten.bp.temporal.TemporalAdjuster cannot be found by org.openhab.io.caldav_1.14.0.201906170308
        at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:484) ~[?:?]
        at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:395) ~[?:?]
        at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:387) ~[?:?]
        at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:150) ~[?:?]
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:?]
        ... 9 more
2019-06-20 16:36:27.484 [ERROR] [org.quartz.core.ErrorLogger] - Job (event-reloader.scottandlisa threw an exception.
org.quartz.SchedulerException: Job threw an unhandled exception.
        at org.quartz.core.JobRunShell.run(JobRunShell.java:213) [185:org.openhab.core.scheduler:2.5.0.201906200304]
        at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) [185:org.openhab.core.scheduler:2.5.0.201906200304]
Caused by: java.lang.NoClassDefFoundError: org/threeten/bp/temporal/TemporalAdjuster
        at net.fortuna.ical4j.model.TimeZoneRegistryImpl.<init>(TimeZoneRegistryImpl.java:125) ~[?:?]
        at net.fortuna.ical4j.model.TimeZoneRegistryImpl.<init>(TimeZoneRegistryImpl.java:116) ~[?:?]
        at net.fortuna.ical4j.model.DefaultTimeZoneRegistryFactory.createRegistry(DefaultTimeZoneRegistryFactory.java:48) ~[?:?]
        at net.fortuna.ical4j.data.CalendarBuilder.<init>(CalendarBuilder.java:105) ~[?:?]
        at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:339) ~[?:?]
        at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:325) ~[?:?]
        at org.openhab.io.caldav.internal.job.EventReloaderJob.execute(EventReloaderJob.java:141) ~[?:?]
        at org.quartz.core.JobRunShell.run(JobRunShell.java:202) ~[?:?]
        ... 1 more
Caused by: java.lang.ClassNotFoundException: org.threeten.bp.temporal.TemporalAdjuster cannot be found by org.openhab.io.caldav_1.14.0.201906170308
        at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:484) ~[?:?]
        at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:395) ~[?:?]
        at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:387) ~[?:?]
        at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:150) ~[?:?]
        at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:?]
        at net.fortuna.ical4j.model.TimeZoneRegistryImpl.<init>(TimeZoneRegistryImpl.java:125) ~[?:?]
        at net.fortuna.ical4j.model.TimeZoneRegistryImpl.<init>(TimeZoneRegistryImpl.java:116) ~[?:?]
        at net.fortuna.ical4j.model.DefaultTimeZoneRegistryFactory.createRegistry(DefaultTimeZoneRegistryFactory.java:48) ~[?:?]
        at net.fortuna.ical4j.data.CalendarBuilder.<init>(CalendarBuilder.java:105) ~[?:?]
        at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:339) ~[?:?]
        at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:325) ~[?:?]
        at org.openhab.io.caldav.internal.job.EventReloaderJob.execute(EventReloaderJob.java:141) ~[?:?]
        at org.quartz.core.JobRunShell.run(JobRunShell.java:202) ~[?:?]
        ... 1 more

Same here, but it does not only occur on startup, it occurs every time, when openhab tries to connect to the calender.

org.quartz.SchedulerException: Job threw an unhandled exception.
	at org.quartz.core.JobRunShell.run(JobRunShell.java:213) [185:org.openhab.core.scheduler:2.5.0.201906240304]
	at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) [185:org.openhab.core.scheduler:2.5.0.201906240304]
Caused by: java.lang.NoClassDefFoundError: org/threeten/bp/temporal/TemporalAdjuster
	at net.fortuna.ical4j.model.TimeZoneRegistryImpl.<init>(TimeZoneRegistryImpl.java:125) ~[?:?]
	at net.fortuna.ical4j.model.TimeZoneRegistryImpl.<init>(TimeZoneRegistryImpl.java:116) ~[?:?]
	at net.fortuna.ical4j.model.DefaultTimeZoneRegistryFactory.createRegistry(DefaultTimeZoneRegistryFactory.java:48) ~[?:?]
	at net.fortuna.ical4j.data.CalendarBuilder.<init>(CalendarBuilder.java:105) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:339) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:325) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.execute(EventReloaderJob.java:141) ~[?:?]
	at org.quartz.core.JobRunShell.run(JobRunShell.java:202) ~[?:?]
	... 1 more
Caused by: java.lang.ClassNotFoundException: org.threeten.bp.temporal.TemporalAdjuster cannot be found by org.openhab.io.caldav_1.14.0.201906170308
	at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:484) ~[?:?]
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:395) ~[?:?]
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:387) ~[?:?]
	at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:150) ~[?:?]
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:?]
	at net.fortuna.ical4j.model.TimeZoneRegistryImpl.<init>(TimeZoneRegistryImpl.java:125) ~[?:?]
	at net.fortuna.ical4j.model.TimeZoneRegistryImpl.<init>(TimeZoneRegistryImpl.java:116) ~[?:?]
	at net.fortuna.ical4j.model.DefaultTimeZoneRegistryFactory.createRegistry(DefaultTimeZoneRegistryFactory.java:48) ~[?:?]
	at net.fortuna.ical4j.data.CalendarBuilder.<init>(CalendarBuilder.java:105) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:339) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:325) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.execute(EventReloaderJob.java:141) ~[?:?]
	at org.quartz.core.JobRunShell.run(JobRunShell.java:202) ~[?:?]
	... 1 more

@kaikreuzer sounds like we need to revert #5860 ?

Or add the missing dependency?

Searching the repo, I did not see anything for org.threeten. I have this though...

203 x Active x  80 x 1.4.0                 x org.threeten.extra

I looked into a backup and saw this...

<bundle dependency="true">mvn:org.threeten/threetenbp/1.3.3</bundle>

... but no file, so dropped this into addons... https://mvnrepository.com/artifact/org.threeten/threetenbp/1.3.3

Based on the hourly exceptions, I should know in about 10 minutes if this helped.

Nope... same error... even after a restart.

same error here...every time when openhab connects to the calendar
openHAB 2.5.0 Build #1627

same for me on Build #1629

After adding threetenbp-1.3.3.jar to libs/:

2019-07-04 09:47:03.224 [ERROR] [org.quartz.core.ErrorLogger         ] - Job (event-reloader.heating threw an exception.
org.quartz.SchedulerException: Job threw an unhandled exception.
	at org.quartz.core.JobRunShell.run(JobRunShell.java:213) [185:org.openhab.core.scheduler:2.5.0.201907030304]
	at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) [185:org.openhab.core.scheduler:2.5.0.201907030304]
Caused by: java.lang.NoClassDefFoundError: org/apache/commons/collections4/Predicate
	at net.fortuna.ical4j.validate.DefaultCalendarValidatorFactory.newInstance(DefaultCalendarValidatorFactory.java:11) ~[?:?]
	at net.fortuna.ical4j.model.Calendar.<init>(Calendar.java:167) ~[?:?]
	at net.fortuna.ical4j.model.Calendar.<init>(Calendar.java:150) ~[?:?]
	at net.fortuna.ical4j.data.CalendarBuilder$ContentHandlerImpl.startCalendar(CalendarBuilder.java:307) ~[?:?]
	at net.fortuna.ical4j.data.CalendarParserImpl.parseCalendar(CalendarParserImpl.java:112) ~[?:?]
	at net.fortuna.ical4j.data.CalendarParserImpl.parseCalendarList(CalendarParserImpl.java:180) ~[?:?]
	at net.fortuna.ical4j.data.CalendarParserImpl.parse(CalendarParserImpl.java:149) ~[?:?]
	at net.fortuna.ical4j.data.CalendarBuilder.build(CalendarBuilder.java:198) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:344) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:325) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.execute(EventReloaderJob.java:141) ~[?:?]
	at org.quartz.core.JobRunShell.run(JobRunShell.java:202) ~[?:?]
	... 1 more
Caused by: java.lang.ClassNotFoundException: org.apache.commons.collections4.Predicate cannot be found by org.openhab.io.caldav_1.14.0.201907040742
	at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:484) ~[?:?]
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:395) ~[?:?]
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:387) ~[?:?]
	at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:150) ~[?:?]
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:?]
	at net.fortuna.ical4j.validate.DefaultCalendarValidatorFactory.newInstance(DefaultCalendarValidatorFactory.java:11) ~[?:?]
	at net.fortuna.ical4j.model.Calendar.<init>(Calendar.java:167) ~[?:?]
	at net.fortuna.ical4j.model.Calendar.<init>(Calendar.java:150) ~[?:?]
	at net.fortuna.ical4j.data.CalendarBuilder$ContentHandlerImpl.startCalendar(CalendarBuilder.java:307) ~[?:?]
	at net.fortuna.ical4j.data.CalendarParserImpl.parseCalendar(CalendarParserImpl.java:112) ~[?:?]
	at net.fortuna.ical4j.data.CalendarParserImpl.parseCalendarList(CalendarParserImpl.java:180) ~[?:?]
	at net.fortuna.ical4j.data.CalendarParserImpl.parse(CalendarParserImpl.java:149) ~[?:?]
	at net.fortuna.ical4j.data.CalendarBuilder.build(CalendarBuilder.java:198) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:344) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:325) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.execute(EventReloaderJob.java:141) ~[?:?]
	at org.quartz.core.JobRunShell.run(JobRunShell.java:202) ~[?:?]
	... 1 more

After adding commons-collections4-4.1.jar to libs/:

2019-07-04 09:30:00.225 [WARN ] [caldav.internal.job.EventReloaderJob] - Error while loading calendar entries: Error loading default cache implementation. Please ensure the JCache API dependency is included in the classpath, or override the cache implementation (e.g. via configuration: net.fortuna.ical4j.timezone.cache.impl=net.fortuna.ical4j.util.MapTimeZoneCache)
java.lang.RuntimeException: Error loading default cache implementation. Please ensure the JCache API dependency is included in the classpath, or override the cache implementation (e.g. via configuration: net.fortuna.ical4j.timezone.cache.impl=net.fortuna.ical4j.util.MapTimeZoneCache)
	at net.fortuna.ical4j.model.TimeZoneLoader$2.get(TimeZoneLoader.java:300) ~[253:org.openhab.io.caldav:1.14.0.201907040720]
	at net.fortuna.ical4j.model.TimeZoneLoader$2.get(TimeZoneLoader.java:294) ~[253:org.openhab.io.caldav:1.14.0.201907040720]
	at net.fortuna.ical4j.util.Optional.orElseGet(Optional.java:31) ~[253:org.openhab.io.caldav:1.14.0.201907040720]
	at net.fortuna.ical4j.model.TimeZoneLoader.cacheInit(TimeZoneLoader.java:294) ~[253:org.openhab.io.caldav:1.14.0.201907040720]
	at net.fortuna.ical4j.model.TimeZoneLoader.<init>(TimeZoneLoader.java:88) ~[253:org.openhab.io.caldav:1.14.0.201907040720]
	at net.fortuna.ical4j.model.TimeZoneRegistryImpl.<init>(TimeZoneRegistryImpl.java:125) ~[253:org.openhab.io.caldav:1.14.0.201907040720]
	at net.fortuna.ical4j.model.TimeZoneRegistryImpl.<init>(TimeZoneRegistryImpl.java:116) ~[253:org.openhab.io.caldav:1.14.0.201907040720]
	at net.fortuna.ical4j.model.DefaultTimeZoneRegistryFactory.createRegistry(DefaultTimeZoneRegistryFactory.java:48) ~[253:org.openhab.io.caldav:1.14.0.201907040720]
	at net.fortuna.ical4j.data.CalendarBuilder.<init>(CalendarBuilder.java:105) ~[253:org.openhab.io.caldav:1.14.0.201907040720]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:339) ~[253:org.openhab.io.caldav:1.14.0.201907040720]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:325) ~[253:org.openhab.io.caldav:1.14.0.201907040720]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.execute(EventReloaderJob.java:141) [253:org.openhab.io.caldav:1.14.0.201907040720]
	at org.quartz.core.JobRunShell.run(JobRunShell.java:202) [185:org.openhab.core.scheduler:2.5.0.201907030304]
	at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) [185:org.openhab.core.scheduler:2.5.0.201907030304]
Caused by: java.lang.NoClassDefFoundError: javax/cache/configuration/Configuration
	at java.lang.Class.forName0(Native Method) ~[?:?]
	at java.lang.Class.forName(Class.java:264) ~[?:?]
	at net.fortuna.ical4j.model.TimeZoneLoader$2.get(TimeZoneLoader.java:298) ~[?:?]
	... 13 more
Caused by: java.lang.ClassNotFoundException: javax.cache.configuration.Configuration cannot be found by org.openhab.io.caldav_1.14.0.201907040720
	at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:484) ~[?:?]
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:395) ~[?:?]
	at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:387) ~[?:?]
	at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:150) ~[?:?]
	at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ~[?:?]
	at java.lang.Class.forName0(Native Method) ~[?:?]
	at java.lang.Class.forName(Class.java:264) ~[?:?]
	at net.fortuna.ical4j.model.TimeZoneLoader$2.get(TimeZoneLoader.java:298) ~[?:?]
	... 13 more

After setting System.setProperty("net.fortuna.ical4j.timezone.cache.impl", MapTimeZoneCache.class.getName()); in code:

2019-07-04 10:07:17.076 [ERROR] [org.quartz.core.JobRunShell         ] - Job event-reloader.waste threw an unhandled Exception: 
java.util.ServiceConfigurationError: net.fortuna.ical4j.validate.CalendarValidatorFactory: Provider net.fortuna.ical4j.validate.DefaultCalendarValidatorFactory not a subtype
	at java.util.ServiceLoader.fail(ServiceLoader.java:239) ~[?:?]
	at java.util.ServiceLoader.access$300(ServiceLoader.java:185) ~[?:?]
	at java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:376) ~[?:?]
	at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:404) ~[?:?]
	at java.util.ServiceLoader$1.next(ServiceLoader.java:480) ~[?:?]
	at net.fortuna.ical4j.validate.AbstractCalendarValidatorFactory.<clinit>(AbstractCalendarValidatorFactory.java:12) ~[?:?]
	at net.fortuna.ical4j.model.Calendar.<init>(Calendar.java:167) ~[?:?]
	at net.fortuna.ical4j.model.Calendar.<init>(Calendar.java:150) ~[?:?]
	at net.fortuna.ical4j.data.CalendarBuilder$ContentHandlerImpl.startCalendar(CalendarBuilder.java:307) ~[?:?]
	at net.fortuna.ical4j.data.CalendarParserImpl.parseCalendar(CalendarParserImpl.java:112) ~[?:?]
	at net.fortuna.ical4j.data.CalendarParserImpl.parseCalendarList(CalendarParserImpl.java:180) ~[?:?]
	at net.fortuna.ical4j.data.CalendarParserImpl.parse(CalendarParserImpl.java:149) ~[?:?]
	at net.fortuna.ical4j.data.CalendarBuilder.build(CalendarBuilder.java:198) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:344) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:325) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.execute(EventReloaderJob.java:141) ~[?:?]
	at org.quartz.core.JobRunShell.run(JobRunShell.java:202) [185:org.openhab.core.scheduler:2.5.0.201907030304]
	at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) [185:org.openhab.core.scheduler:2.5.0.201907030304]
2019-07-04 10:07:17.108 [ERROR] [org.quartz.core.ErrorLogger         ] - Job (event-reloader.waste threw an exception.
org.quartz.SchedulerException: Job threw an unhandled exception.
	at org.quartz.core.JobRunShell.run(JobRunShell.java:213) [185:org.openhab.core.scheduler:2.5.0.201907030304]
	at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) [185:org.openhab.core.scheduler:2.5.0.201907030304]
Caused by: java.util.ServiceConfigurationError: net.fortuna.ical4j.validate.CalendarValidatorFactory: Provider net.fortuna.ical4j.validate.DefaultCalendarValidatorFactory not a subtype
	at java.util.ServiceLoader.fail(ServiceLoader.java:239) ~[?:?]
	at java.util.ServiceLoader.access$300(ServiceLoader.java:185) ~[?:?]
	at java.util.ServiceLoader$LazyIterator.nextService(ServiceLoader.java:376) ~[?:?]
	at java.util.ServiceLoader$LazyIterator.next(ServiceLoader.java:404) ~[?:?]
	at java.util.ServiceLoader$1.next(ServiceLoader.java:480) ~[?:?]
	at net.fortuna.ical4j.validate.AbstractCalendarValidatorFactory.<clinit>(AbstractCalendarValidatorFactory.java:12) ~[?:?]
	at net.fortuna.ical4j.model.Calendar.<init>(Calendar.java:167) ~[?:?]
	at net.fortuna.ical4j.model.Calendar.<init>(Calendar.java:150) ~[?:?]
	at net.fortuna.ical4j.data.CalendarBuilder$ContentHandlerImpl.startCalendar(CalendarBuilder.java:307) ~[?:?]
	at net.fortuna.ical4j.data.CalendarParserImpl.parseCalendar(CalendarParserImpl.java:112) ~[?:?]
	at net.fortuna.ical4j.data.CalendarParserImpl.parseCalendarList(CalendarParserImpl.java:180) ~[?:?]
	at net.fortuna.ical4j.data.CalendarParserImpl.parse(CalendarParserImpl.java:149) ~[?:?]
	at net.fortuna.ical4j.data.CalendarBuilder.build(CalendarBuilder.java:198) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:344) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:325) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.execute(EventReloaderJob.java:141) ~[?:?]
	at org.quartz.core.JobRunShell.run(JobRunShell.java:202) ~[?:?]
	... 1 more
2019-07-04 10:07:25.487 [ERROR] [org.quartz.core.JobRunShell         ] - Job event-reloader.heating threw an unhandled Exception: 
java.lang.NoClassDefFoundError: Could not initialize class net.fortuna.ical4j.validate.AbstractCalendarValidatorFactory
	at net.fortuna.ical4j.model.Calendar.<init>(Calendar.java:167) ~[?:?]
	at net.fortuna.ical4j.model.Calendar.<init>(Calendar.java:150) ~[?:?]
	at net.fortuna.ical4j.data.CalendarBuilder$ContentHandlerImpl.startCalendar(CalendarBuilder.java:307) ~[?:?]
	at net.fortuna.ical4j.data.CalendarParserImpl.parseCalendar(CalendarParserImpl.java:112) ~[?:?]
	at net.fortuna.ical4j.data.CalendarParserImpl.parseCalendarList(CalendarParserImpl.java:180) ~[?:?]
	at net.fortuna.ical4j.data.CalendarParserImpl.parse(CalendarParserImpl.java:149) ~[?:?]
	at net.fortuna.ical4j.data.CalendarBuilder.build(CalendarBuilder.java:198) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:344) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:325) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.execute(EventReloaderJob.java:141) ~[?:?]
	at org.quartz.core.JobRunShell.run(JobRunShell.java:202) [185:org.openhab.core.scheduler:2.5.0.201907030304]
	at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) [185:org.openhab.core.scheduler:2.5.0.201907030304]
2019-07-04 10:07:25.512 [ERROR] [org.quartz.core.ErrorLogger         ] - Job (event-reloader.heating threw an exception.
org.quartz.SchedulerException: Job threw an unhandled exception.
	at org.quartz.core.JobRunShell.run(JobRunShell.java:213) [185:org.openhab.core.scheduler:2.5.0.201907030304]
	at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) [185:org.openhab.core.scheduler:2.5.0.201907030304]
Caused by: java.lang.NoClassDefFoundError: Could not initialize class net.fortuna.ical4j.validate.AbstractCalendarValidatorFactory
	at net.fortuna.ical4j.model.Calendar.<init>(Calendar.java:167) ~[?:?]
	at net.fortuna.ical4j.model.Calendar.<init>(Calendar.java:150) ~[?:?]
	at net.fortuna.ical4j.data.CalendarBuilder$ContentHandlerImpl.startCalendar(CalendarBuilder.java:307) ~[?:?]
	at net.fortuna.ical4j.data.CalendarParserImpl.parseCalendar(CalendarParserImpl.java:112) ~[?:?]
	at net.fortuna.ical4j.data.CalendarParserImpl.parseCalendarList(CalendarParserImpl.java:180) ~[?:?]
	at net.fortuna.ical4j.data.CalendarParserImpl.parse(CalendarParserImpl.java:149) ~[?:?]
	at net.fortuna.ical4j.data.CalendarBuilder.build(CalendarBuilder.java:198) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:344) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.loadEvents(EventReloaderJob.java:325) ~[?:?]
	at org.openhab.io.caldav.internal.job.EventReloaderJob.execute(EventReloaderJob.java:141) ~[?:?]
	at org.quartz.core.JobRunShell.run(JobRunShell.java:202) ~[?:?]
	... 1 more

Now I got stuck ... (see progress master...cweitkamp:bufgix-5870-caldav-dependencies).

System.setProperty("net.fortuna.ical4j.timezone.cache.impl", MapTimeZoneCache.class.getName());

What/where is MapTimeZoneCache? Could you try adding javax.cache?

It is an internal implementation: net.fortuna.ical4j.util.MapTimeZoneCache. Including cache-api-1.0.0.jar results in the same error.

commented

@kaikreuzer sounds like we need to revert #5860 ?

Or add the missing dependency?

As it seams to be difficult to add the missing dependency (and I do not even have an idea how to help): Wouldn't it be better to revert #5860 ? @kaikreuzer what do You think as You've merged the commit c14c872

I didn't test #5860, but I merged it as @cweitkamp approved it (and from the code it looked all good to me as well) and I assumed that @daMihe tested the PR before creating it.

I'd hence think the best one to comment what might be wrong here is @daMihe. Can you shed some light on the newer version of the dependency for us?

Okay i think this is a regression based on a newer OH version or a timezone based issue - i've tested it using the milestone that was the current but i only had two different servers in same timezone to test with (that's just a thought about the first trace). So my setup surely did not cover all situations.

The newer version did fix issues about repeating and deleted single events in a series. So i've just replaced it and basically done really small changes to keep in style.

Just for interest: Did you try to build a reverted version? My environment is currently outdated and i currently don't have set up a development OH, i'll do when i find some time and try to debug.

Just had a look into the code changes. The only thing that came to my mind while reviewing was the bounce of ical4j from 2.0-beta1 to 2.2.3
-- lib/ical4j-2.0-beta1.jar,
++ lib/ical4j-2.2.3.jar,

Maybe it's easy to bounce ical4j to 3.x (which requires Java 8)? It will help to get rid of all those libraries supplying backported classes for Java 7. 😉

Or as long as Java 8 is not possible, just return to 2.0-beta1

yes, please revert #5860 (or return to 2.0-beta1) and then let's search a solution in a new branch...i'll be happy to get a functional caldav-binding after a month...
Thanks!

That the problem is related to the lib bump was just a (untested guess).
I'm currently failing to build the openhab1 addons (compare question)

Okay, i'm not able to reproduce - my setup is not covering other peoples needs. However, i'm not fully understanding the dependency handling of openhab (or OSGi?). As my change does cause regressions please do a revert.

I'll use my own "patched" version further and try to understand more. Maybe i'll adapt the plugin to make something different, new.

commented

What is the problem with Java8? I think that requiring pre-Java8 is very outdated and OH2 has Java8 as requirement and I guess most people run OH2 anyway.

We had never required Java8 for openHAB 1.x and thus we kept it that way to easily support existing setups that want to touch as little as possible.
But I agree that a lot of time has passed and I wouldn't ask to stick to Java7, if this hinders any useful features or fixes.

@cweitkamp Seems like cache-api-1.1.1.jar does the deal ...

Could someone please test: jar files

@bjoernbrings Thanks for investigation. I will test it later.

I had the issue mentioned here and just tested the provided jar files -> Success!
Thank you.

Thanks for testing. It works for me as well. PR is on its way. Thanks especially to @cweitkamp for prework and @wborn for advising me on the mvn bug (you can't compile opehab1-addons with current maven version 3.6.1 but have to use 3.6.0)

@bjoernbrings Seem to work. I did not see any error after installing it.

So then we are hopefully done as soon as it is merged.
Nevertheless a openhab2 addon with less library overhead might be worth thinking about after M2 is done :)

Fixed by #5880.

Thanks @bjoernbrings for driving this towards a solution!

Thank you all for your hard work. I'm looking forward to the working connection to my calendars.