This string is passed on to the xmlWriter in line 201:
// Format the WS-Addressing headers.
String wsAddressingHeaders = String.format(
WSSecurityBasedCredentials.wsAddressingHeadersFormat,
webMethodName, this.ewsUrl);
// And write them out...
xmlWriter.writeCharacters(wsAddressingHeaders);
The xmlWriter however, will escape the characters < and > to its corresponding html escape values < and > and then send a malformed xml body to the exchangeService. The backend can't parse the xml body and fails with an internal server error.
This fix simply uses the default xml writer implementation and instructs it to not escape characters.
Fixes #746
Root cause is the line 85 of WSSecurityBasedCredentials.java:
This string is passed on to the xmlWriter in line 201:
The xmlWriter however, will escape the characters
<
and>
to its corresponding html escape values<
and>
and then send a malformed xml body to the exchangeService. The backend can't parse the xml body and fails with an internal server error.This fix simply uses the default xml writer implementation and instructs it to not escape characters.