如何使用 EWSJavaAPI 读取任务?
How to read task using EWSJavaAPI?
我正在使用 EWSJavaAPI 在 Exchange Server 中创建任务,但我没有获得任何对使用相同 api 获取任务的引用。
下面是我的代码添加任务:
Task t=new Task(service);
t.setSubject("Task to test in JAVA");
t.setBody(MessageBody.getMessageBodyFromText("Test body from JAVA"));
t.setStartDate(startTime);
t.setDueDate(endTime);
t.save();
我尝试了以下代码来获取任务,但这不起作用:
//Create the extended property definition.
ExtendedPropertyDefinition taskCompleteProp = new
ExtendedPropertyDefinition(DefaultExtendedPropertySet.Task, 0x0000811C,
MapiPropertyType.Boolean);
//Create the search filter.
SearchFilter.IsEqualTo filter = new
SearchFilter.IsEqualTo(taskCompleteProp, false);
//Get the tasks.
FindItemsResults<Item> tasks =
service.findItems(WellKnownFolderName.Tasks, filter, new ItemView(50));
for(Item task:tasks){
System.out.println(task.getSubject());
System.out.println(task.getBody());// getting error at this line
System.out.println(task.getReminderMinutesBeforeStart());
System.out.println(task.getReminderDueBy());
System.out.println("=======================");
}
错误 task.getBody();
microsoft.exchange.webservices.data.ServiceObjectPropertyException:您必须加载或分配此 属性 才能读取其值。
在 microsoft.exchange.webservices.data.PropertyBag.getPropertyValueOrException(来源不明)
在 microsoft.exchange.webservices.data.PropertyBag.getObjectFromPropertyDefinition(来源不明)
在 microsoft.exchange.webservices.data.Item.getBody(来源不明)
在 MSExchangeEmailService.readTask(MSExchangeEmailService.java:146)
在 MSExchangeEmailService.main(MSExchangeEmailService.java:224)
请帮忙,这是获取任务的正确方法吗??
您需要先加载任务。
在 for
循环之前添加 task.load()
。
我正在使用 EWSJavaAPI 在 Exchange Server 中创建任务,但我没有获得任何对使用相同 api 获取任务的引用。 下面是我的代码添加任务:
Task t=new Task(service);
t.setSubject("Task to test in JAVA");
t.setBody(MessageBody.getMessageBodyFromText("Test body from JAVA"));
t.setStartDate(startTime);
t.setDueDate(endTime);
t.save();
我尝试了以下代码来获取任务,但这不起作用:
//Create the extended property definition.
ExtendedPropertyDefinition taskCompleteProp = new
ExtendedPropertyDefinition(DefaultExtendedPropertySet.Task, 0x0000811C,
MapiPropertyType.Boolean);
//Create the search filter.
SearchFilter.IsEqualTo filter = new
SearchFilter.IsEqualTo(taskCompleteProp, false);
//Get the tasks.
FindItemsResults<Item> tasks =
service.findItems(WellKnownFolderName.Tasks, filter, new ItemView(50));
for(Item task:tasks){
System.out.println(task.getSubject());
System.out.println(task.getBody());// getting error at this line
System.out.println(task.getReminderMinutesBeforeStart());
System.out.println(task.getReminderDueBy());
System.out.println("=======================");
}
错误 task.getBody(); microsoft.exchange.webservices.data.ServiceObjectPropertyException:您必须加载或分配此 属性 才能读取其值。 在 microsoft.exchange.webservices.data.PropertyBag.getPropertyValueOrException(来源不明) 在 microsoft.exchange.webservices.data.PropertyBag.getObjectFromPropertyDefinition(来源不明) 在 microsoft.exchange.webservices.data.Item.getBody(来源不明) 在 MSExchangeEmailService.readTask(MSExchangeEmailService.java:146) 在 MSExchangeEmailService.main(MSExchangeEmailService.java:224)
请帮忙,这是获取任务的正确方法吗??
您需要先加载任务。
在 for
循环之前添加 task.load()
。