Open girishghoda57 opened 5 years ago
For any of user need help on it. The posted solution below:
package microsoft.exchange.webservices.data.core.response;
import microsoft.exchange.webservices.data.core.EwsServiceXmlReader; import microsoft.exchange.webservices.data.core.EwsUtilities; import microsoft.exchange.webservices.data.core.XmlElementNames; import microsoft.exchange.webservices.data.core.service.item.Conversation; import microsoft.exchange.webservices.data.property.complex.HighlightTerm; import microsoft.exchange.webservices.data.core.enumeration.misc.XmlNamespace; import microsoft.exchange.webservices.data.security.XmlNodeType;
import java.util.ArrayList; import java.util.Collection; import java.util.List;
/**
Represents the response to a Conversation search operation.
*/
public final class FindConversationResponse extends ServiceResponse {
List
/**
/**
return this.conversations;
}
/**
return this.highlightTerms;
}
/**
return this.totalCount;
}
/**
reader.readStartElement(XmlNamespace.Messages, XmlElementNames.Conversations); if (!reader.isEmptyElement()) { do { reader.read(); if (reader.getNodeType().getNodeType() == XmlNodeType.START_ELEMENT) { Conversation item = EwsUtilities. createEwsObjectFromXmlElementName(Conversation.class, reader.getService(), reader.getLocalName());
if (item == null) {
reader.skipCurrentElement();
} else {
item.loadFromXml(
reader,
true, /* clearPropertyBag */
null,
false /* summaryPropertiesOnly */);
conversations.add(item);
}
}
} while (!reader.isEndElement(XmlNamespace.Messages, XmlElementNames.Conversations)); } reader.read();
if (reader.isStartElement(XmlNamespace.Messages, XmlElementNames.HighlightTerms) && !reader.isEmptyElement()) { do { reader.read();
if (reader.getNodeType().getNodeType() == XmlNodeType.START_ELEMENT)
{
HighlightTerm term = new HighlightTerm();
term.loadFromXml(
reader,
XmlNamespace.Types,
XmlElementNames.HighlightTerm);
this.highlightTerms.add(term);
}
}
while (!reader.isEndElement(XmlNamespace.Messages, XmlElementNames.HighlightTerms));
}
if (reader.isStartElement(XmlNamespace.Messages, XmlElementNames.TotalConversationsInView) && !reader.isEmptyElement()) { this.totalCount = Integer.parseInt(reader.readElementValue()); reader.read(); }
if (reader.isStartElement(XmlNamespace.Messages, XmlElementNames.IndexedOffset) && !reader.isEmptyElement()) { this.totalCount = Integer.parseInt(reader.readElementValue()); reader.read(); } } } `
import microsoft.exchange.webservices.data.core.EwsServiceXmlReader; import microsoft.exchange.webservices.data.core.XmlElementNames;
public class HighlightTerm extends ComplexProperty {
private String scope;
private String value;
public HighlightTerm() {
}
/**
@throws Exception the exception */ @Override public boolean tryReadElementFromXml(EwsServiceXmlReader reader) throws Exception {
if (reader.getLocalName().equals(XmlElementNames.HighlightTermScope)) { this.scope = reader.readElementValue(); return true; } else if (reader.getLocalName().equals(XmlElementNames.HighlightTermValue)) { this.value = reader.readElementValue(); return true; } else { return false; } }
}`
public static final String HighlightTerms = "HighlightTerms"; public static final String HighlightTerm = "Term"; public static final String HighlightTermScope = "Scope"; public static final String HighlightTermValue = "Value"; public static final String TotalConversationsInView = "TotalConversationsInView"; public static final String IndexedOffset = "IndexedOffset";
It resolves "The request failed. The expected XML node type was END_ELEMENT, but the actual type is START_ELEMENT." error for findConversation().
I got this solution from .NET repository. Thank you.
@girishghoda57 Thank you so much. You saved my life
Hi team @serious6 @OS-JaR @pkropachev @shibd @atamer, We used ews java api :2.1-SNAPSHOT</ews.java.api.version>
We call below code
Collection<Conversation> folderConversations = exchangeService.findConversation( new ConversationIndexedItemView(10), new FolderId(WellKnownFolderName.Inbox));
But its threw below error
The request failed. The expected XML node type was END_ELEMENT, but the actual type is START_ELEMENT.
Please help, we stuck on two days. Thank you