powered by simpleCommunicator - 2.0.30     © 2024 Programmizd 02
Map
Форумы / Informix [игнор отключен] [закрыт для гостей] / парсинг XML проблема русских букв
20 сообщений из 20, страница 1 из 1
парсинг XML проблема русских букв
    #37213443
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
Доброго дня коллеги!

IDS 11.5 FC7IE
кто нибудь использовал функции etract (XML,XPath)
или extractvalue
при парсинге XML с русскими буквами внутри?

Пока в документе нет русских букв - все работает.
Пишем по-русски - получае SQL -8355.
...
Рейтинг: 0 / 0
парсинг XML проблема русских букв
    #37213670
GVF112GVF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
cprДоброго дня коллеги!

IDS 11.5 FC7IE
кто нибудь использовал функции etract (XML,XPath)
или extractvalue
при парсинге XML с русскими буквами внутри?

Пока в документе нет русских букв - все работает.
Пишем по-русски - получае SQL -8355.

Посмотри здесь - http://publib.boulder.ibm.com/infocenter/idshelp/v115/index.jsp?topic=/com.ibm.xml.doc/ids_xppublishing.html

С уважением,
Вадим.
...
Рейтинг: 0 / 0
парсинг XML проблема русских букв
    #37213699
GVF112GVF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
cprДоброго дня коллеги!

IDS 11.5 FC7IE
кто нибудь использовал функции etract (XML,XPath)
или extractvalue
при парсинге XML с русскими буквами внутри?

Пока в документе нет русских букв - все работает.
Пишем по-русски - получае SQL -8355.

PS: -8355 Function <funcname> Error parsing the input XML document.

Explanation:The input XML document for <funcname> is not a well-formed
XML string. For example:
SELECT idsxmlparse('<customer>John<customer>') from tab;
The input XML string is not a well formed XML string in this
case because it is missing a </customer> tag.

Action: Supply a well-formed XML document as the input.
For example:
SELECT idsxmlparse('<customer>John</customer>') from tab;

С уважением,
Вадим.
...
Рейтинг: 0 / 0
парсинг XML проблема русских букв
    #37216905
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
drop procedure splapiparse;
create procedure splapiparse (
ind nchar(30000)
)
returning char(18) as signature, nchar(255) as value;

define mainproc char(18);
define numpar int;
define i int;
define xpath char(255);
define mainpar char(18);
define maintype char(1);

define smain nchar(255);
define main_i int;
define main_d date;
define main_m decimal(32,2);
define main_n decimal;
define main_t char(19);

let mainproc=extractvalue(ind,"/cibapi/prc");

if (mainproc is NULL) then
raise exception -746,0,"splapiparse: procedure name not found (NULL)";
end if

if (length(mainproc)==0) then
raise exception -746,0,"splapiparse: procedure name not found (empty)";
end if
return "CALLABLE_PROC_NAME",mainproc with resume;

let numpar=extractvalue(ind,"/cibapi/npar");
if (numpar==0) then
return;
end if
for i=1 to numpar
let maintype=extractvalue(ind,"/cibapi/par["||i||"]/type");
let smain=extractvalue(ind,"/cibapi/par["||i||"]/value");
if (upper(maintype)=='I') then
let main_i = smain[1,10];
return "CALLABLE_PAR_"||i,main_i with resume;
elif (upper(maintype)=='D') then
let main_d = smain[1,10];
return "CALLABLE_PAR_"||i,main_d with resume;
elif (upper(maintype) == 'M') then
let main_m = smain[1,32];
return "CALLABLE_PAR_"||i,main_m with resume;
elif (upper(maintype) =='N') then
let main_n = smain[1,32];
return "CALLABLE_PAR_"||i,main_n with resume;
elif (upper(maintype)=='C') then
return "CALLABLE_PAR_"||i,smain with resume;
end if
end for
return;
end procedure;




execute procedure splapiparse
(
--'<?xml version="1.0" encoding="RU_RU.866"?>'||
'<cibapi>'||
' <prc>mycall</prc>'||
' <npar>6</npar>'||
' <par>'||
' <type>I</type>'||
' <value>1998</value>'||
' </par>'||
' <par>'||
' <type>C</type>'||
' <value>qqq</value>'||
' </par>'||
' <par>'||
' <type>D</type>'||
' <value>01.01.2011</value>'||
' </par>'||
' <par>'||
' <type>T</type>'||
' <value>01.01.2011 11:45:00</value>'||
' </par>'||
' <par>'||
' <type>N</type>'||
' <value>3.1415</value>'||
' </par>'||
' <par>'||
' <type>M</type>'||
' <value>152654.14</value>'||
' </par>'||
'</cibapi>'
);

возвращает курсор:

signature value
CALLABLE_PROC_NAME mycall
CALLABLE_PAR_1 1998
CALLABLE_PAR_2 qqq
CALLABLE_PAR_3 01.01.2011
CALLABLE_PAR_5 3.1415000000000000
CALLABLE_PAR_6 152654.14

Если вписать в любой элемент value строку с русскими буквами, то выбрасывается эксэпшен -8355
...
Рейтинг: 0 / 0
парсинг XML проблема русских букв
    #37216916
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
БД имеет локаль ru_RU.866
...
Рейтинг: 0 / 0
парсинг XML проблема русских букв
    #37217382
GVF112GVF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
cprБД имеет локаль ru_RU.866

Что происходит если заменить char на nchar ???

define mainproc nchar(18);
define xpath nchar(255);
define mainpar nchar(18);
define maintype nchar(1);
define smain nchar(255);
define main_t nchar(19);


С уважением,
Вадим
...
Рейтинг: 0 / 0
парсинг XML проблема русских букв
    #37217947
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
GVF112GVF,

Уже пробовал.
При замене qqq на ппп выбрасывается исключение -8355
...
Рейтинг: 0 / 0
парсинг XML проблема русских букв
    #37218103
GVF112GVF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
cprGVF112GVF,

Уже пробовал.
При замене qqq на ппп выбрасывается исключение -8355

Попробуйте использовать другую кодовую страницу:
encoding="RU_RU.1251" или encoding="RU_RU.UTF8"

Можно еще попытаться создать тестовую базу данных с DB_LOCALE=ru_RU.UTF8 (или CP1251)
и проверить. Жаль, что нет под рукой Informix.

С уважением,
Вадим.
...
Рейтинг: 0 / 0
парсинг XML проблема русских букв
    #37219628
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
GVF112GVF,

если база и клиент работают в локали en_US.utf8 то все работает.
...
Рейтинг: 0 / 0
парсинг XML проблема русских букв
    #37219736
GVF112GVF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
cprGVF112GVF,

если база и клиент работают в локали en_US.utf8 то все работает.

Я не зря спросил по кодировку CP1251 или UTF8 для русской локали RU_RU.
Нужно быть уверенным, что у Вас есть все файлы перекодировки INFORMIX из 866 <-> 1251 или 866<->UTF8.
Для это, устанвливается дополнительный пакет IBM Informix ILS 3.50.x (INTERNATIONAL LANGUAGE SUPPLEMENT).

Если файлы перекодировки присутствуют для локали RU_RU,
тогда возможно, что это какой-то баг.

С уважением,
Вадим.
...
Рейтинг: 0 / 0
парсинг XML проблема русских букв
    #37225807
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
GVF112GVF,
Подскажите пожалуйста ILS бесплатен ?
...
Рейтинг: 0 / 0
парсинг XML проблема русских букв
    #37226107
GVF112GVF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
cprGVF112GVF,
Подскажите пожалуйста ILS бесплатен ?

ДА! Пакет ILS (INTERNATIONAL LANGUAGE SUPPLEMENT можно получить через электронную доставку бесплатно
(хотя все относительно - трафик стоит денег) или по цене CD-носителя + таможенные сборы.

С уважением,
Вадим.
...
Рейтинг: 0 / 0
парсинг XML проблема русских букв
    #37228655
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
GVF112GVFcprGVF112GVF,
Подскажите пожалуйста ILS бесплатен ?

ДА! Пакет ILS (INTERNATIONAL LANGUAGE SUPPLEMENT можно получить через электронную доставку бесплатно
(хотя все относительно - трафик стоит денег) или по цене CD-носителя + таможенные сборы.

С уважением,
Вадим.

Координаьы не подскажете?
На сайте IBM не удалось найти
...
Рейтинг: 0 / 0
парсинг XML проблема русских букв
    #37228955
GVF12GVF
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
cprGVF112GVFпропущено...


ДА! Пакет ILS (INTERNATIONAL LANGUAGE SUPPLEMENT можно получить через электронную доставку бесплатно
(хотя все относительно - трафик стоит денег) или по цене CD-носителя + таможенные сборы.

С уважением,
Вадим.

Координаьы не подскажете?
На сайте IBM не удалось найти

Попробуйте обратиться в локальный офис IBM/SWG - они должны помочь.

С уважением,
Вадим.
...
Рейтинг: 0 / 0
парсинг XML проблема русских букв
    #37308005
dishonest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
cprДоброго дня коллеги!

IDS 11.5 FC7IE
кто нибудь использовал функции etract (XML,XPath)
или extractvalue
при парсинге XML с русскими буквами внутри?

Пока в документе нет русских букв - все работает.
Пишем по-русски - получае SQL -8355.

Вот интересно, а поборол то проблему?
...
Рейтинг: 0 / 0
парсинг XML проблема русских букв
    #37309021
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
dishonest,

пока нет

на сайте ILS не нашел.
Нашел только старый ILS от купленного конторой давно IDS 7.30
но он не подошел
...
Рейтинг: 0 / 0
парсинг XML проблема русских букв
    #37309026
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
dishonest,


парсим джавой
...
Рейтинг: 0 / 0
парсинг XML проблема русских букв
    #37310864
dishonest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
cpr,

иэхх, я просто к чему. Мы тут у себя просто ставили под 11.5 для клиента 3.50 ILS, пробовали и так и сяк, толку ноль..
...
Рейтинг: 0 / 0
парсинг XML проблема русских букв
    #37311067
cpr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
cpr
Гость
dishonestcpr,

иэхх, я просто к чему. Мы тут у себя просто ставили под 11.5 для клиента 3.50 ILS, пробовали и так и сяк, толку ноль..

в смысле парсинг не работает?
...
Рейтинг: 0 / 0
парсинг XML проблема русских букв
    #37311529
dishonest
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
cprв смысле парсинг не работает?

ога, фигня(?) но никак не кирилица
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / Informix [игнор отключен] [закрыт для гостей] / парсинг XML проблема русских букв
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]