Hi,
newer versions of SOAP::Lite do an encode('UTF-8', $content) around the
XML content.
Newer versions of perl (I think since 5.8.5, but I'm not sure) use UTF-8
as their internal string representation, and accept either UTF-8 or
platform encoding as input. Thus, the combination of both may have lead
to the unexpected fix ;-)
Best regards,
Martin
Am Mittwoch, den 15.09.2010, 15:38 +0200 schrieb Thorsten Schöning:
> Hello,
>
> I have a simple soap server using the pretty old version 0.55 of
> SOAP::Lite. The server should send UTF-8 encoded strings, which
> doesn't work with this old version. The interesting thing is that my
> application logic behind the server does not generate a valid UTF-8
> perl string with UTF-8-flag set, but just windows-1252 and leaves the
> rest to SOAP::Lite. This is an error, but it works in newer versions
> of perl. In the old version even if my application generates a proper
> UTF-8-perl-string with flag set the response is not valid UTF-8.
>
> I thought that the new versions of SOAP::Lite are simply just encoding
> the response before sending it to the client, but I can't find any
> place where this encoding may happen. How does it work that SOAP::Lite
> can send proper UTF-8-Strings even with non-UTF-8 input? Is there any
> encoding I just didn't find?
>
> Mit freundlichen Grüßen,
>
> Thorsten Schöning
>
|