LotusNotes8.5:使用java创建会议
我开始使用LotusNotes8.5,我必须使用Java、Lotus.domino和Notes.jar在Lotus中创建会议 因此,为了做到这一点,我创建了一个新文档,并用我认为需要的所有字段填充它。以下是我创建会议的方式:LotusNotes8.5:使用java创建会议,java,lotus-notes,lotus-domino,Java,Lotus Notes,Lotus Domino,我开始使用LotusNotes8.5,我必须使用Java、Lotus.domino和Notes.jar在Lotus中创建会议 因此,为了做到这一点,我创建了一个新文档,并用我认为需要的所有字段填充它。以下是我创建会议的方式: Document newDocument = db.createDocument(); newDocument.appendItemValue("Body", "Create meeting from java."); newDocument.append
Document newDocument = db.createDocument();
newDocument.appendItemValue("Body", "Create meeting from java.");
newDocument.appendItemValue("Notes", "Test Notes");
newDocument.appendItemValue("Chair", "Me");
newDocument.appendItemValue("Principal", "Me");
newDocument.appendItemValue("$altPrincipal", "Me");
newDocument.appendItemValue("ExcludeFromView", "D,S");
newDocument.appendItemValue("UpdateSeq", 1);
newDocument.appendItemValue("$CSVersion", "2");
newDocument.appendItemValue("$SMTPKeepNotesItems", "1");
newDocument.appendItemValue("$CSWISL", "$S:1,$L:1,$B:1,$R:1,$E:1,$W:1,$O:1,$M:1,RequiredAttendees:1,INetRequiredNames:1,AltRequiredNames:1,StorageRequiredNames:1,OptionalAttendees:1,INetOptionalNames:1,AltOptionalNames:1,StorageOptionalNames:1,ApptUNIDURL:1,STUnyteConferenceURL:1,STUnyteConferenceID:1,SametimeType:1,WhiteBoardContent:1,STRoomName:1");
newDocument.appendItemValue("WebDateTimeInit", "1");
newDocument.appendItemValue("OrgTable", "C0");
newDocument.appendItemValue("$AlarmDisabled", "1");
newDocument.appendItemValue("$HFFlags", "1");
newDocument.appendItemValue("Form", "Appointment");
newDocument.appendItemValue("$FromPreferredLanguage", "fr");
newDocument.appendItemValue("ApptUNID", "267DEFCD6ADE4EF8C1257DF600464A1B642");
newDocument.appendItemValue("$LangChair", "");
newDocument.appendItemValue("AppointmentType", "3");
newDocument.appendItemValue("$TableSwitcher", "Description");
newDocument.appendItemValue("OnlineMeeting", "");
newDocument.appendItemValue("From", "Me");
newDocument.appendItemValue("AltChair", "Me");
newDocument.appendItemValue("OnlinePlace", "");
newDocument.appendItemValue("IsBroadcast", "");
newDocument.appendItemValue("$ExpandGroups", 3);
newDocument.appendItemValue("IsTeamCalendar", "");
newDocument.appendItemValue("Importance", "");
newDocument.appendItemValue("OrgConfidential", "");
newDocument.appendItemValue("Subject", "Meeting test from Java");
newDocument.appendItemValue("PreventCounter", "");
newDocument.appendItemValue("Location", "R1");
newDocument.appendItemValue("RoomToReserve", "");
newDocument.appendItemValue("Resources", "");
newDocument.appendItemValue("$PaperColor", 1);
newDocument.appendItemValue("STRecordMeeting", "");
newDocument.appendItemValue("WhiteBoardContent", "");
newDocument.appendItemValue("Categories", "");
newDocument.appendItemValue("$BorderColor", "7F96A3");
newDocument.appendItemValue("$WatchedItems", "$S,$L,$B,$R,$E,$W,$O,$M,RequiredAttendees,INetRequiredNames,AltRequiredNames,StorageRequiredNames,OptionalAttendees,INetOptionalNames,AltOptionalNames,StorageOptionalNames,ApptUNIDURL,STUnyteConferenceURL,STUnyteConferenceID,SametimeType,WhiteBoardContent,STRoomName");
newDocument.appendItemValue("CalForwardChairNotificationTo", "");
newDocument.appendItemValue("ReturnReceipt", "");
newDocument.appendItemValue("PreventDelegate", "");
newDocument.appendItemValue("EnterSendTo", "");
newDocument.appendItemValue("EnterCopyTo", "");
newDocument.appendItemValue("EnterBlindCopyTo", "");
newDocument.appendItemValue("ConferenceCallInfo", "");
newDocument.appendItemValue("SchedulerSwitcher", "1");
newDocument.appendItemValue("$Abstract", "");
newDocument.appendItemValue("StartTimeZone", "Z=-1$DO=1$DL=3 -1 1 10 -1 1$ZN=Western/Central Europe");
newDocument.appendItemValue("EndTimeZone", "Z=-1$DO=1$DL=3 -1 1 10 -1 1$ZN=Western/Central Europe");
newDocument.appendItemValue("NewStartTimeZone", "");
newDocument.appendItemValue("NewEndTimeZone", "");
newDocument.appendItemValue("Encrypt", "Représentation invalide. (undefined)");
newDocument.appendItemValue("Sign", "");
newDocument.appendItemValue("MeetingType", "");
newDocument.appendItemValue("$PublicAccess", "1");
newDocument.appendItemValue("StartDate", "27/02/2015");
newDocument.appendItemValue("StartTime", "11:00:00");
newDocument.appendItemValue("STARTDATETIME", s.createDateTime(new GregorianCalendar(2015, 02, 27, 11, 0, 0)));
newDocument.appendItemValue("EndDate", "27/02/2015");
newDocument.appendItemValue("EndTime", "13:00:00");
newDocument.appendItemValue("EndDateTime", s.createDateTime(new GregorianCalendar(2015, 02, 27, 13, 0, 0)));
newDocument.appendItemValue("CalendarDateTime", s.createDateTime(new GregorianCalendar(2015, 02, 27, 11, 0, 0)));
newDocument.appendItemValue("_ViewIcon", 158);
newDocument.appendItemValue("$ShowComments", "Normal");
newDocument.appendItemValue("$ShowDescription", "Show");
newDocument.appendItemValue("$BusyName", "Me");
newDocument.appendItemValue("$BusyPriority", "1");
newDocument.appendItemValue("SequenceNum", 2);
newDocument.appendItemValue("$CSTrack", "Imported from my contacts at 02/24/2015 14:00:17");
newDocument.appendItemValue("$NoPurge", s.createDateTime(new GregorianCalendar(2015, 02, 27, 13, 0, 0)));
newDocument.appendItemValue("$UpdatedBy", "Me");
newDocument.appendItemValue("$Revisions", s.createDateTime(new GregorianCalendar(2015, 02, 24, 13, 48, 31)));
newDocument.appendItemValue("tmpUseLongDate", s.createDateTime(new GregorianCalendar(2015, 02, 27, 11, 0, 0)));
newDocument.appendItemValue("tmpEventLabel", "Meeting from Java (tmpEventLabel)");
newDocument.appendItemValue("dispRepeatText", "Meeting from Java (dispRepeatText)");
newDocument.appendItemValue("tmpHideTimeZone", "");
newDocument.appendItemValue("tmpStartDate1", "27/02/2015");
newDocument.save();
当我回到Lotus时,会议被创建并显示在日历中。
问题是,无论我添加或删除哪个字段,当我单击此会议时,Lotus都会向我抛出一个错误,说法语的近似翻译:
字段:“tmpStartDate1”:运算符或@function所需的临时数据
所以我在java中添加了这个新字段,启动程序,创建会议,然后
字段:“tmpHideTimeZone”:运算符或@function所需的临时数据
现在,这是莲花向我发出的第五条信息
所有的“tmp******”字段都丢失了,但我不知道它们。我认为这些字段可以由Lotus生成,因为“tmp”,但是如何生成呢
我比较了使用LotusNotes创建的其他会议,没有这样的“tmp”字段
有什么想法吗
编辑:
我试过这个:
newDocument.computeWithForm(true, true);
如果您的文档格式不好,它会引发NotesException。
当我再次执行代码近似翻译时…:
NotesException:字段中的数据类型不正确
我在另一个程序中尝试了computeWithForm,在该程序中我创建了一个联系人并将其添加到Lotus,但没有收到任何错误
因此,meeting的字段确实存在问题
编辑:
有什么新想法吗?我对如何在这个软件上开发有点困惑….项目也有类型!此外,日期不是一根绳子,日期是一种复杂的动物,乍一看是无害的,但可以咬得很厉害 Document.appendItemValue方法强制该项为文本类型。
对于非临时的日期/时间;-您应该使用的项目,并将其作为类参数传递。8.5是一个固定要求吗?从9.0开始,用Java创建会议要容易得多。不管怎样,看看这个问题的答案:我知道9.0有很好的解决方案,但我必须处理8.5。。。。我已经看到了这篇文章,它不是同一个问题,这个帖子的答案显示了会议的所有字段,但不是tmp**********字段。我试过:DateTime startDate=s.createDateTimenew GregorianCalendar2015,3,8,11,0,0;newDocument.replaceItemValueCustomDataStartDate,startDate;但是我在replaceItemValueCustomData行上得到了一个“NotSerializableException”。我使用lotus.Domino.DateTime。