From 2f28151a6462c044845c833f80ed714b54e8dc66 Mon Sep 17 00:00:00 2001 From: mguessan Date: Wed, 12 May 2010 09:16:20 +0000 Subject: [PATCH] Improve item not found logging git-svn-id: http://svn.code.sf.net/p/davmail/code/trunk@1043 3d1905a2-6b24-0410-a738-b14d5a86fcbd --- src/java/davmail/exchange/ExchangeSession.java | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/java/davmail/exchange/ExchangeSession.java b/src/java/davmail/exchange/ExchangeSession.java index 71087c4d..1d609092 100644 --- a/src/java/davmail/exchange/ExchangeSession.java +++ b/src/java/davmail/exchange/ExchangeSession.java @@ -23,7 +23,6 @@ import davmail.Settings; import davmail.exception.DavMailAuthenticationException; import davmail.exception.DavMailException; import davmail.exception.HttpNotFoundException; -import davmail.exception.HttpServerErrorException; import davmail.http.DavGatewayHttpClientFacade; import davmail.http.DavGatewayOTPPrompt; import davmail.util.StringUtil; @@ -3091,12 +3090,14 @@ public class ExchangeSession { * @throws IOException on error */ public Item getItem(String folderPath, String itemName) throws IOException { + String itemPath = folderPath + '/' + convertItemNameToEML(itemName); Item item; try { - item = getItem(folderPath + '/' + convertItemNameToEML(itemName)); + item = getItem(itemPath); } catch (HttpNotFoundException hnfe) { // failover for Exchange 2007 plus encoding issue String decodedEventName = convertItemNameToEML(itemName).replaceAll("_xF8FF_", "/").replaceAll("_x003F_", "?").replaceAll("'", "''"); + LOGGER.debug("Item not found at "+itemPath+", search by displayname: '"+decodedEventName+ '\''); ExchangeSession.MessageList messages = searchMessages(folderPath, " AND \"DAV:displayname\"='" + decodedEventName + '\''); if (!messages.isEmpty()) { item = getItem(messages.get(0).getPermanentUrl());