Кириллица в gSOAP

Решил проверить, как gSOAP будет генерировать код для элементов с именем с не-латинскими буквами.

Я подозревал, что могут возникнуть проблемы с маленькой буквой «я» или «р», поэтому в WSDL определил тип с элементом «Дня»:

<element name="commingtotown">
 <complexType>
 <sequence>
 <element name="Дня" type="xsd:int" minOccurs="1" maxOccurs="1"/>
 </sequence>
 </complexType>
 </element>

gSOAP создал заголовочный файл и .c и .cpp исходные файлы с таким кодом:

SOAP_FMAC3 int SOAP_FMAC4 soap_out_int(struct soap*, const char*, int, const int *, const char*);
...
if (soap_out_int(soap, "ns2:Дня", -1, &(a-> _ns2__commingtotown::_x0414_x043d_x044f), ""))
 return soap->error;

в UTF-8 кодировке. Элемент «Дня» стал _x0414_x043d_x044f, а литерал сохранился как есть. То есть, все должно работать при сохранении кодировки.

 

Comments

comments

Powered by Facebook Comments

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *