Exchange server Exchange 2013 EWS API创建日历项

Exchange server Exchange 2013 EWS API创建日历项,exchange-server,exchangewebservices,Exchange Server,Exchangewebservices,我刚升级到Exchange 2013。我可以代表其他Exchange用户连接并发送电子邮件。但我无法代表其他用户插入日历事件。我正在使用Coldfusion 9和EWS API 我得到了错误; 系统试图使用未定义的值,该值通常表示代码或某些系统代码中存在编程错误 它指向那条线; 附件开始=#CreateDateTime(2014,05,05,09,00,00)# 我可以为测试目的硬编码日期/时间吗 我试过了;附件开始日期='2014/05/05 09:00:00' 但我也犯了同样的错误 <

我刚升级到Exchange 2013。我可以代表其他Exchange用户连接并发送电子邮件。但我无法代表其他用户插入日历事件。我正在使用Coldfusion 9和EWS API

我得到了错误; 系统试图使用未定义的值,该值通常表示代码或某些系统代码中存在编程错误

它指向那条线; 附件开始=#CreateDateTime(2014,05,05,09,00,00)#

我可以为测试目的硬编码日期/时间吗

我试过了;附件开始日期='2014/05/05 09:00:00' 但我也犯了同样的错误

<cfobject type="Java" class="microsoft.exchange.webservices.data.ExchangeService" name="service">
<cfset service.init()>
<cfobject type="Java" class="microsoft.exchange.webservices.data.ExchangeVersion" name="version">
<cfset service.init(version.Exchange2010)>

<cfobject type="Java" class="microsoft.exchange.webservices.data.WebCredentials" name="credentials">
<cfset credentials.init("v@t.com","password")>
<cfset service.setCredentials(credentials) />
<cfobject type="Java" class="java.net.URI" name="uri">
<cfset uri.init("https://exch999.serverdata.net/EWS/Exchange.asmx?wsdl")>
<cfset service.setUrl(uri) />

以下代码作为解决方案进行了编辑

   <cfoutput>
                <cfobject type="Java" class="microsoft.exchange.webservices.data.Appointment" name="appointment">
                <cfset appointment.init( service )>
                <cfobject type="Java" class="microsoft.exchange.webservices.data.MessageBody" name="MessageBody">
                <!--- <cfset MessageBody.init( service )> --->
                <cfscript>
                    appointment.setStart(#createDateTime(Year(Arguments.EventStartDateTime), Month(Arguments.EventStartDateTime),Day(Arguments.EventStartDateTime), evaluate(Hour(Arguments.EventStartDateTime) - val(attributes.AdminTimeZone)), Minute(Arguments.EventStartDateTime), 0)#);
                    appointment.setEnd(#createDateTime(Year(Arguments.EventEndDateTime), Month(Arguments.EventEndDateTime),Day(Arguments.EventEndDateTime), evaluate(Hour(Arguments.EventEndDateTime) - val(attributes.AdminTimeZone)), Minute(Arguments.EventEndDateTime), 0)#);
                    /*appointment.StartTimeZone(TimeZoneInfo.Local);
                    appointment.EndTimeZone(TimeZoneInfo.Local);*/
                    appointment.setSubject("#Arguments.EventName#");
                    appointment.setBody(MessageBody.getMessageBodyFromText("#Arguments.EventDescription#"));
                    /*appointment.IsReminderSet(false);*/
                    appointment.Save();
                    </cfscript>
            </cfoutput>

约会.setStart(#createDateTime(年(参数.EventStartDateTime)、月(参数.EventStartDateTime)、日(参数.EventStartDateTime)、评估(小时(参数.EventStartDateTime)-val(属性.AdminTimeZone))、分钟(参数.EventStartDateTime)、0)#;
约会.setEnd(#createDateTime(年(参数.EventEndDateTime)、月(参数.EventEndDateTime)、日(参数.EventEndDateTime)、评估(小时(参数.EventEndDateTime)-val(属性.AdminTimeZone))、分钟(参数.EventEndDateTime)、0)#;
/*预约:StartTimeZone(TimeZoneInfo.Local);
约会。结束时区(TimeZoneInfo.Local)*/
appointment.setSubject(“#Arguments.EventName#”);
appointment.setBody(MessageBody.getMessageBodyFromText(“#Arguments.EventDescription#”);
/*任命。IsReminderSet(错误)*/
Save();

错误是否是由于“2014,05”中的多余空格造成的?如果你把它改成,它能修复吗?事实上,错误就在应该修复的地方。现在我得到了错误;必须先加载或分配此属性,然后才能读取其值。在设置/获取之前尝试读取某个内容时,会引发此错误。这个错误是在哪一行抛出的?