diff --git a/src/java/davmail/exchange/ews/EWSMethod.java b/src/java/davmail/exchange/ews/EWSMethod.java index 775e63f5..31820957 100644 --- a/src/java/davmail/exchange/ews/EWSMethod.java +++ b/src/java/davmail/exchange/ews/EWSMethod.java @@ -437,7 +437,7 @@ public abstract class EWSMethod extends PostMethod { } /** - * Get Exchange server version, Exchange2010 or Exchange2007_SP1 + * Get Exchange server version, Exchange2013, Exchange2010 or Exchange2007_SP1 * * @return server version */ @@ -1103,8 +1103,14 @@ public abstract class EWSMethod extends PostMethod { handleErrors(reader); if (serverVersion == null && XMLStreamUtil.isStartTag(reader, "ServerVersionInfo")) { String majorVersion = getAttributeValue(reader, "MajorVersion"); - if ("14".equals(majorVersion)) { - String minorVersion = getAttributeValue(reader, "MinorVersion"); + String minorVersion = getAttributeValue(reader, "MinorVersion"); + if ("15".equals(majorVersion)) { + if ("0".equals(minorVersion)) { + serverVersion = "Exchange2013"; + } else { + serverVersion = "Exchange2013_SP1"; + } + } else if ("14".equals(majorVersion)) { if ("0".equals(minorVersion)) { serverVersion = "Exchange2010"; } else { diff --git a/src/java/davmail/exchange/ews/EwsExchangeSession.java b/src/java/davmail/exchange/ews/EwsExchangeSession.java index 9c739461..e4aba6aa 100644 --- a/src/java/davmail/exchange/ews/EwsExchangeSession.java +++ b/src/java/davmail/exchange/ews/EwsExchangeSession.java @@ -969,7 +969,7 @@ public class EwsExchangeSession extends ExchangeSession { @Override public Condition headerIsEqualTo(String headerName, String value) { - if (serverVersion.startsWith("Exchange2010")) { + if (serverVersion.startsWith("Exchange201")) { if ("from".equals(headerName) || "to".equals(headerName) || "cc".equals(headerName)) { @@ -1631,8 +1631,8 @@ public class EwsExchangeSession extends ExchangeSession { newItem.setFieldUpdates(updates); createOrUpdateItemMethod = new CreateItemMethod(MessageDisposition.SaveOnly, SendMeetingInvitations.SendToNone, getFolderId(folderPath), newItem); - // force context Timezone on Exchange 2010 - if (serverVersion != null && serverVersion.startsWith("Exchange2010")) { + // force context Timezone on Exchange 2010 and 2013 + if (serverVersion != null && serverVersion.startsWith("Exchange201")) { createOrUpdateItemMethod.setTimezoneContext(EwsExchangeSession.this.getVTimezone().getPropertyValue("TZID")); } //}