我正在尝试使用 EWS 搜索 Exchange 2010 上的任务文件夹。我正在尝试限制返回的任务的截止日期,但不幸的是,任务文件夹的 CalendarView 没有等效项,因此我必须使用 FindItem搜索。
我正在使用 Java、Axis2 并准备这样的查询:
// fiType is, obviously, a FindItemType
RestrictionType rType = fiType.addNewRestriction();
IsGreaterThanOrEqualToType igtoretType = IsGreaterThanOrEqualToType.Factory.newInstance();
igtoretType.addNewFieldURI().setFieldURI(UnindexedFieldURIType.TASK_DUE_DATE);
igtoretType.addNewFieldURIOrConstant().addNewConstant().setValue(dateFormat.format(begCal.getTime()));
IsLessThanOrEqualToType iltoretType = IsLessThanOrEqualToType.Factory.newInstance();
iltoretType.addNewFieldURI().setFieldURI(UnindexedFieldURIType.TASK_DUE_DATE);
iltoretType.addNewFieldURIOrConstant().addNewConstant().setValue(dateFormat.format(endCal.getTime()));
SearchExpressionType[] seArr = new SearchExpressionType[2];
seArr[0] = igtoretType;
seArr[1] = iltoretType;
AndType aType = rType.addNewAnd();
aType.setSearchExpressionArray(seArr);
不幸的是,我收到此错误:
org.apache.axis2.AxisFault: La demande a échoué lors de la validation du schéma : L'élément ' http://schemas.microsoft.com/exchange/services/2006/types:SearchExpression ' est abstrait ou son type l'美东时间。
粗略翻译自法语,这意味着查询失败,因为 SearchExpression 类型是抽象的,或者它的类型是。
搜索后,我发现这篇文章解释了如何修改types.xsd
文件来解决这个问题。但是,即使在应用修改之后,我仍然会遇到同样的错误。
我不知道如何解决这个问题。任何帮助,将不胜感激。