Je třeba si uvědomit, že XML text není řetězec znaků, ale proud bajtů. Proto by neměl být přenášen jako String, ale jako binární data. Čili pokud do jednoho XML chcete vložit jiné XML s jiným kódováním, musíte se k němu chovat jako k binárním datům a zakódovat je pomocí Base64. Jinak nastane naprostý zmatek.
Alternativou by bylo nevkládat ten fragment XYZ jako kompletní XML dokument
s vlastním kódováním, ale jako množinu tagů do původního dokumentu,
pak by tyhle potíže odpadly. Na druhou stranu by nastaly potíže
s definicí schématu toho nadřazeného dokumentu, a klient
by to XYZ dostal jako nějaký DOM objekt.
Makub
[EMAIL PROTECTED] napsal(a):
> Ahoj
> robim pre zakaznika webovu sluzbu a nie je mi jasna jedna vec.
>
> webova sluzba getXYZ vracia String, ktory obsahuje xml.
>
> napriklad
> public String getXYZ() throws MyException {
> StringBuffer xml = new StringBuffer("<?xml version=\"1.0\"
> encoding=\"windows-1250\"?>");
> xml.append("<ret>ľščťžýŠČŽ</ret>");
> return xml.toString();
> }
>
> A tu mam dilemu...v akom kodovani to pride ku klientovy? Resp. ako sa
> spracuvavaju narodne znaky?
> Povedzme ze niekto, kto funguje ja neviem v basicu si z wsdl
> vygeneruje klienta a zavola getXYZ(). Tipujem ze basic ma nieco ako
> string, takze urobi nieco ako (basic netusim, tak len takto...)
> VAR str AS STRING
> LET str = proxy.getXYZ()
>
> v str ma tera co? utf-8? windows-1250? zalezi od jazyka?
>
> Vdaka za objasnenie
> jerzy
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Supercomputing Center Brno Martin Kuba
Institute of Computer Science email: [EMAIL PROTECTED]
Masaryk University http://www.ics.muni.cz/~makub/
Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775
--------------------------------------------------------------
smime.p7s
Description: S/MIME Cryptographic Signature
