Here is the quick example of caldav + Rotini calendar-widget using google calendar, hope it helps:
/etc/openhab2/services/caldavio.cfg
caldavio:omadon_cal:url=https://www.google.com/calendar/dav/your_gmail@gmail.com/events
caldavio:omadon_cal:username=your_gmail@gmail.com
caldavio:omadon_cal:password=your_gmail_pass
caldavio:omadon_cal:reloadInterval=10
caldavio:omadon_cal:preloadTime=86400
/etc/openhab2/services/caldavPersonal.cfg
caldavPersonal:usedCalendars=omadon_cal
/etc/openhab2/items/calendar.items
String Calendar_home_Event1 "Event [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:1 value:NAME" }
String Calendar_home_Place1 "Place [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:1 value:PLACE" }
DateTime Calendar_home_Start_Time1 "Start Time [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:1 value:START" }
DateTime Calendar_home_End_Time1 "End Time [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:1 value:END" }
String Calendar_home_Event2 "Event [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:2 value:NAME" }
String Calendar_home_Place2 "Place [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:2 value:PLACE" }
DateTime Calendar_home_Start_Time2 "Start Time [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:2 value:START" }
DateTime Calendar_home_End_Time2 "End Time [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:2 value:END" }
String Calendar_home_Event3 "Event [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:3 value:NAME" }
String Calendar_home_Place3 "Place [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:3 value:PLACE" }
DateTime Calendar_home_Start_Time3 "Start Time [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:3 value:START" }
DateTime Calendar_home_End_Time3 "End Time [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:3 value:END" }
String Calendar_home_Event4 "Event [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:4 value:NAME" }
String Calendar_home_Place4 "Place [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:4 value:PLACE" }
DateTime Calendar_home_Start_Time4 "Start Time [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:4 value:START" }
DateTime Calendar_home_End_Time4 "End Time [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:4 value:END" }
String Calendar_home_Event5 "Event [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:5 value:NAME" }
String Calendar_home_Place5 "Place [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:5 value:PLACE" }
DateTime Calendar_home_Start_Time5 "Start Time [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:5 value:START" }
DateTime Calendar_home_End_Time5 "End Time [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:5 value:END" }
String Calendar_home_Event6 "Event [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:6 value:NAME" }
String Calendar_home_Place6 "Place [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:6 value:PLACE" }
DateTime Calendar_home_Start_Time6 "Start Time [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:6 value:START" }
DateTime Calendar_home_End_Time6 "End Time [%s]" <calendar> { caldavPersonal="calendar:omadon_cal type:UPCOMING eventNr:6 value:END" }
/etc/openhab2/sitemaps/calendar.sitemap
sitemap calendar label="Calendar {rotini:true}"
{
Frame label="{widget:calendar}" {
Text item=Calendar_home_Event1 label="{item:event1-title}"
Text item=Calendar_home_Place1 label="{item:event1-location}"
Text item=Calendar_home_Start_Time1 label="{item:event1-start-time}"
Text item=Calendar_home_End_Time1 label="{item:event1-end-time}"
Text item=Calendar_home_Event2 label="{item:event2-title}"
Text item=Calendar_home_Place2 label="{item:event2-location}"
Text item=Calendar_home_Start_Time2 label="{item:event2-start-time}"
Text item=Calendar_home_End_Time2 label="{item:event2-end-time}"
Text item=Calendar_home_Event3 label="{item:event3-title}"
Text item=Calendar_home_Place3 label="{item:event3-location}"
Text item=Calendar_home_Start_Time3 label="{item:event3-start-time}"
Text item=Calendar_home_End_Time3 label="{item:event3-end-time}"
Text item=Calendar_home_Event4 label="{item:event4-title}"
Text item=Calendar_home_Place4 label="{item:event4-location}"
Text item=Calendar_home_Start_Time4 label="{item:event4-start-time}"
Text item=Calendar_home_End_Time4 label="{item:event4-end-time}"
Text item=Calendar_home_Event5 label="{item:event5-title}"
Text item=Calendar_home_Place5 label="{item:event5-location}"
Text item=Calendar_home_Start_Time5 label="{item:event5-start-time}"
Text item=Calendar_home_End_Time5 label="{item:event5-end-time}"
Text item=Calendar_home_Event6 label="{item:event6-title}"
Text item=Calendar_home_Place6 label="{item:event6-location}"
Text item=Calendar_home_Start_Time6 label="{item:event6-start-time}"
Text item=Calendar_home_End_Time6 label="{item:event6-end-time}"
}
}