Home Page › Forums › BizTalk 2004 – BizTalk 2010 › Encoding problem when calling a webservice
- This topic has 2 replies, 1 voice, and was last updated 9 years, 5 months ago by
community-content.
-
AuthorPosts
-
-
June 23, 2010 at 3:27 AM #25035
Hi,
In one of my of my orchestrations I have a problem receiving diacritic characters using a webserice. With another webservice the diacritics are rendered correct.
Chracters appear correct when I call the web service using SoapUI. Using Biztalk characters like ö (o umlaut) and ß (Eszett) appear as ??
, two questionmarks. I tried including this pipeline: http://winterdom.com/2006/01/fixmessageencodingcustompipelinecomponentsample to the receive location of the webservice,
but that doesn’t change everything. In the custom pipeline I tried setting the encoding to Western European (Windows) and also UTF-8. I don’t know if this custom pipeline works. Even when I set it to Chinese nothing changes.
In Wireshark I can see that ß is send as C3 9F in hexadecimal. This seems to be correct for UTF-8. And ö is send as c3 b6 that also seems to be correct for UTF-8. I thought Biztalk uses UTF-8 as a default and this should work without
using a pipeline. Any idea how I can receive these characters correct?Regards,
Bart
-
June 23, 2010 at 5:34 AM #25041
I just found out that the working webservice uses an utf-8 declaration in both the http header and the xml declaration.
Content-Type: text/xml; charset=utf-8
<?xml version=’1.0′ encoding=’UTF-8′?>
The webservice where the encoding isn’t correct, doesn’t have these utf-8 declarations. It even doesn’t have an xml declaration, after the http header the soap evelope begins.
Content-Type: text/xml
Transfer-Encoding: chunked3d1
<soap-env:Envelope xmlns:soap-env=”http://schemas.xmlsoap.org/soap/envelope/“ -
June 24, 2010 at 5:30 AM #25053
I solved this by letting the admin of the webserver add:
Content-Type: text/xml; charset=utf-8
to the http header of the webservice. So apparently Biztalk can’t properly recognize an http response as utf-8 when the http header doesn’t contain the charset.
Any ideas on how to do this if you don’t have access to the webservers http responses?
Regards,
Bart
-
-
AuthorPosts
- The forum ‘BizTalk 2004 – BizTalk 2010’ is closed to new topics and replies.