Try this:
val today_start = (entrydoormonitor_start.state as DateTimeType).zonedDateTime.with(LocalDate.now)
entrydoormonitor_start.postUpdate(today_start.toString)
FYI in JRuby, working with date/time/duration is more intuitive yet simplified, so that a lot of type castings are not needed.
today_start = entrydoormonitor_start.state.with(LocalDate.now)
entrydoormonitor_start.update(today_start)
You could even write a method to bring any datetime item to today
def to_today(item) = item.update(item.state.with(LocalDate.now))
to_today(entrydoormonitor_start)
to_today(entrydoormonitor_end)
Or even like this
class DateTimeItem
def to_today = update(state.with(LocalDate.now))
end
entrydoormonitor_start.to_today
entrydoormonitor_end.to_today