更新EmailMessage后消息正文发生更改

时间:2012-11-18 12:03:55

标签: exchangewebservices ewsjavaapi

我的目标是加载电子邮件,如果是新邮件,请将其标记为已读。

所以这就是我在做的事情:

        EmailMessage email=EmailMessage.bind(service,itemId);
        email.load();
        email.setSubject(GeneralUtils.replaceSpecialCharacters(email.getSubject()));
        email.setBody(MessageBody.getMessageBodyFromText(GeneralUtils.replaceSpecialCharacters(email.getBody().toString())));
        if(!email.getIsRead()){ 
          email.setIsRead(true);
          email.update(ConflictResolutionMode.AutoResolve);
        }

ISSUE:第一次阅读邮件正文时(在将邮件标记为已读之前) 我可以按如下方式正确阅读邮件正文:

This is message body

但是在将邮件标记为已读并更新邮件后,尝试再次加载此邮件时,邮件正文加载如下:

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
This is message body
</body>
</html>

请告知我为什么会遇到这种行为,以及如何解决这个问题。

1 个答案:

答案 0 :(得分:0)

我通过不设置已处理的正文来修复它,我删除了以下行,它运行正常:

email.setBody(MessageBody.getMessageBodyFromText(GeneralUtils.replaceSpecialCharacters(email.getBody().toString())));