Saving Encoding in XML file with MemoryStream

Hi,

I'm having a encoding problem sending XMLHttpRequests to a Domino site.

The connection works nice except when there are special characters in NAV, then the client is receiving the special characters in what looks like ANSII. I am setting the request as UTF8 though and do not see how to force the request to be encoded in UTF8. The content of the blob field "QueueHeader.Request" shows the xml content fine when I export it to a text file, although the xml declaration does not show the charset as utf-8, so it seems it not saving it.

I'd appreciate some input, thanks!

Here my code snippet:
XMLHttpRequest := XMLHttpRequest.Create(WebServiceURL);
XMLHttpRequest.Method('POST');
XMLHttpRequest.ContentType('text/xml;charset=utf-8');
XMLHttpRequest.Headers.Add('SOAPAction',QueueHeader.ProcessType);
XMLHttpRequest.KeepAlive(TRUE);

QueueHeader.CALCFIELDS("Xml Request"); 
QueueHeader."Xml Request".CREATEINSTREAM(myInStream,TEXTENCODING::UTF8);

vBigText.READ(myInStream);
Bytes := Encoding.UTF8.GetBytes(vBigText);
XMLHttpRequest.ContentLength(Bytes.Length);
XMLHttpRequest.Proxy();
MemoryStream := MemoryStream.MemoryStream();
MemoryStream := XMLHttpRequest.GetRequestStream;
MemoryStream.Write(Bytes,0,Bytes.Length);
MemoryStream.Close;
MemoryStream.Dispose;

XMLHttpResponse := XMLHttpRequest.GetResponse;

XMLDoc := XMLDoc.XmlDocument();
XMLDoc.Load(XMLHttpResponse.GetResponseStream);
XMLHttpResponse.Close;
XMLDoc.Save(Response);

Answers

  • xpotauxpotau Member Posts: 2
    Sorry forgot to say all this is working on dotnet not automations as it needs to run on nas services.
  • vaprogvaprog Member Posts: 1,114
    utf-8 is the default encoding for an XML Document, so if no encoding specification is there, the reader must assume uft-8. The question is, whether the document is actually utf-8 encoded in the blob
Sign In or Register to comment.