update (NotesCalendarEntry - Java)

Updates a calendar entry.

Defined in



void update(String entry)
	throws NotesException
void update(String entry, String comments)
	throws NotesException
void update(String entry, String comments, long flags)
	throws NotesException
void update(String entry, String comments, long flags, String recurid)
	throws NotesException
Parameter Description
icalentry The new value of the entry in iCalendar format.
comments Comments regarding a meeting change.
flags Write flags. Combine values by adding them.
  • NotesCalendar.CS_WRITE_DISABLE_IMPLICIT_SCHEDULING (2) disables the automatic sending of notices to participants. Setting this flag is the same as setting AutoSendNotices to false before calling this method.
  • NotesCalendar.CS_WRITE_MODIFY_LITERAL (1 completely overwrites the original entry and using only the icalentry input. By default, the update preserves body attachments if they are not supplied with the input and preserves custom fields not present on the icalentry input.
recurid The recurrence identifier (RECURRENCE-ID item) for a recurring calendar event. The format of a recurrence identifier is a time in UTC format, for example, 20120913T160000Z.
Possible exception Value Text Description
NotesError.NOTES_ERR_RECURID_NOTFOUND 4808 Recurrence-ID not found The recurrence identifier for the NotesCalendarEntry object is not valid.
NotesError.NOTES_ERR_ERRSENDINGNOTICES 4809 Error sending notices A problem occurred sending out notices for a meeting. You may want to update the meeting again.
NotesError.NOTES_ERR_NEWERVERSIONEXISTS 4810 Newer version exists The icalentry data is not valid according to sequence. You should revise it or retrieve new data, and try again.
NotesError.NOTES_ERR_UNSUPPORTEDACTION 4811 Unsupported action The method is attempting to apply an action that is not valid for the entry, for example, attempting to cancel a meeting when you are not the chair.
NotesError.NOTES_ERR_IDNOTFOUND 4814 Identifier not found The recurrence identifier for the NotesCalendarEntry object does not identify an entry in the calendar.


The entry value must contain one VEVENT.

For a recurring entry, you must specify recurid. The iCalendar input must contain a single VEVENT and a UID.


This agent updates a calendar entry given its UID.
import lotus.domino.*;

public class JavaAgent extends AgentBase {

    public void NotesMain() {

      try {
          Session session = getSession();
          AgentContext agentContext = session.getAgentContext();

          // (Your code goes here)
          String uid = session.getEnvironmentString("currentuid");
          if (uid != null) {
              DbDirectory dbdir = session.getDbDirectory("");
              Database maildb = dbdir.openMailDatabase();
              NotesCalendar cal = session.getCalendar(maildb);
              NotesCalendarEntry cale = cal.getEntry(uid);
              String upd = cale.read().replace("T1600", "T1615");
              cale.update(upd, "Pushing up 15 minues",

      } catch(Exception e) {