powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Java [игнор отключен] [закрыт для гостей] / Чудеса с кодировкой
25 сообщений из 44, страница 1 из 2
Чудеса с кодировкой
    #39857407
alexanderer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день.
Есть система А, которая по вебсервису ВС1 получала данные. Все было хорошо.
Теперь сделали новый вебсервис ВС2 с расширенным функционалом так, что старые запросы приходя на ВС2 перенаправляются на ВС1.
Сисему А настроили на новый вебсервис ВС2 и теперь приходят какие-то не читаемые символы типа:
GND="Перевод собственных средс??в" PA="200000" PD="29.08.2019" R="0"/><D A="500" CUR="RUR" D="29.08.2019 16:04:36" GND="Перевод собственных средств" PA="500"

Т.е. не все символы не читаемые, а какой то единственный. Причем, когда тестирую у себя через соапуй, то и ВС1 и ВС2 все возвращают нормально, в читабельном виде. И только у клиента такая фигня.
Может кто-то сталкивался с таким или есть мысли, что это может быть?
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857427
vas0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexandererДобрый день.
Есть система А, которая по вебсервису ВС1 получала данные. Все было хорошо.
Теперь сделали новый вебсервис ВС2 с расширенным функционалом так, что старые запросы приходя на ВС2 перенаправляются на ВС1.
Сисему А настроили на новый вебсервис ВС2 и теперь приходят какие-то не читаемые символы типа:
GND="Перевод собственных средс??в" PA="200000" PD="29.08.2019" R="0"/><D A="500" CUR="RUR" D="29.08.2019 16:04:36" GND="Перевод собственных средств" PA="500"

Т.е. не все символы не читаемые, а какой то единственный. Причем, когда тестирую у себя через соапуй, то и ВС1 и ВС2 все возвращают нормально, в читабельном виде. И только у клиента такая фигня.
Может кто-то сталкивался с таким или есть мысли, что это может быть?Из советов попросить клиента прислать, то что он отправляет (или взять из логов). Возможно это проблема вообще на его стороне.
Посмотреть не присылает ли он BOM заголовок Ничего путного сходу не нагуглил
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857432
alexanderer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vas0,

Строка со знаками вопроса - это из логов клиента.
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857441
Фотография Dmitry.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
похоже на неправильное восстановление текста из кодировки (utf-8) при буфферезированом чтении

например передаем строку АБВ-ГДЕ
в байтах это


Код: java
1.
2.
А    Б    В    -  Г    Д    Е
D090 D091 D092 2D D093 D094 D095



на кириллицу - 2 байта на аски - 1 байт

допустим буффер чтения 8 байт

считываем байты до половины буквы Г (только первый байт) и если это преобразовать в строку, то получим

Код: java
1.
АБВ-?


затем следующую часть начиная со второго байта с преобразованием к строке
Код: java
1.
?ДЕ




Вот и получится
Код: java
1.
АБВ-??ДЕ
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857443
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexanderer,
"у себя" работает. "у клиента" не работает.
Кто сравнивать будет?
Пушкин?
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857450
alexanderer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dmitry.,

А есть метод, как с этим бороться?
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857457
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexandererDmitry.,

А есть метод, как с этим бороться?есть.
Подать на вход заранее известный "" мама мыла раму". Потом логировать до места поломки.
Потом патчить.
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857520
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alexanderervas0,

Строка со знаками вопроса - это из логов клиента.
Здесь - уравнение со множеством неизвестных. Почему в логах вопросики? Либо реально зашли символы "?".
Либо система логгирования просто не в состоянии формировать символы с кодами старше 127.

Провертье это.
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857526
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поскольку русские пуковки в логе есть, то гипотеза "вообще не умеет" - вообще не состоятельна.
А вот "неправильное декодирование" - более чем вероятно. Но, в этом случае, открывается широкое поле для разбрасывания разных граблей.
Какие конкретно грабли разложены у автора? "Гипотез не измышляю".
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857533
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dmirii предложил хорошую рабочую версию о буферизации utf-8.
Надо ее как-то проверить. Как вариант - она должна циклически
проявлятся в испорченном символе с постоянным периодом.

Афтор можешь проверить? Если версия верна - то дальше сложнее.
Надо искать код где идет самопальная процедура конверсии.
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857538
Фотография asv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
афтар ты чо не учил кодировки?
если у тебя ?? значит проблема в кодировке
выясняй в чем отправляете ,в чем принимаете
проблем однозначно в этом ,что где то у вас на пути одного сервиса к другому прописаны разные кодировки
если не хочешь это лечить
отправляй байт массив с нужной кодировкой и далее на выходе делай с ним что душе угодно
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857545
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
asv79,

ты опять лезешь не по делу - тут кодировка дело второе. в строке и русские и англицкие и большие и малые и цифры.
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857550
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя, да чего. Пускай идёт разведка боем. Чем больше вопросов зададут ТС-у тем лучше.

Не спугнуть бы его только. ТС-а...
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857552
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonвадя, да чего. Пускай идёт разведка боем. Чем больше вопросов зададут ТС-у тем лучше.да проблемка интересная

maytonНе спугнуть бы его только. ТС-а...asv79 старается это сделать
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857553
Фотография asv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяasv79,

ты опять лезешь не по делу - тут кодировка дело второе. в строке и русские и англицкие и большие и малые и цифры.
вадя если ты не в курсе то все англ буквы умещаются в аски и в любой кодироке они прочитаюся правильно
проблема в русских буквах и в том что где то наверняка стоит utf-8 а где то по умолчанию ср -123123 какой нить
поэтому часть и не читаема
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857556
vas0
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проблема интересная. И ТС судя по дате регистрации, не новичок. Большая вероятность что "коллективный разум" не сможет помочь.

Очень интересно в чем трабла. ТС отпишись если не трудно, чем дело кончилось.
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857561
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В фразе "Перевод собственных средс??в" испорчена русская буква т с кодом 0x0442 по Unicode.
Если это так - то для двух вопросительных знаков бинарном представлении мы должны увидеть
глазками эти коды в наложении на маску 110xxxxx 10xxxxxx далее - сбой декодера UTF-8
где второй байт обрезан. А потом сбой декодера на старте где приходит хвостик буквы т
но воспринимается декдером некорректно т.к. стартовая маска неожиданно стала 10***
вместо ожидаемой 110***. Вобщем все это так... поток моих мыслей. Как оно на самом
деле - ХЗ. Кодировку действительно можно сломать дважды в двух местах и получить
ошибку Шрёдингера.
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857567
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
глазастый
alexandererТ.е. не все символы не читаемые, а какой то единственный. Причем, когда тестирую у себя через соапуй, то и ВС1 и ВС2 все возвращают нормально, в читабельном виде. И только у клиента такая фигня.есть подозрение на качество сети....
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857585
Basil A. Sidorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
asv79вадя если ты не в курсе то все англ буквы умещаются в аски и в любой кодироке они прочитаюся правильноОсобенно правильно они прочитаются в UTF-16/UTF-32. Для простоты - будучи порезаны на кусочки нечётного размера.
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857592
Фотография asv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Basil A. Sidorovasv79вадя если ты не в курсе то все англ буквы умещаются в аски и в любой кодироке они прочитаюся правильноОсобенно правильно они прочитаются в UTF-16/UTF-32. Для простоты - будучи порезаны на кусочки нечётного размера.
если мне память не изменяет то все 128 инглишь символов коректно читаются в любой уникод кодировке)
проверять не буду)
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857593
забыл ник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
asv79Basil A. Sidorovпропущено...
Особенно правильно они прочитаются в UTF-16/UTF-32. Для простоты - будучи порезаны на кусочки нечётного размера.
если мне память не изменяет то все 128 инглишь символов коректно читаются в любой уникод кодировке)
проверять не буду)
Зря )
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857595
Фотография asv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
забыл никasv79пропущено...

если мне память не изменяет то все 128 инглишь символов коректно читаются в любой уникод кодировке)
проверять не буду)
Зря )
проверил ,разное getByte возращает)
вот так и верь российской прессе)
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857596
Фотография asv79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
проверил еще раз ,все таки книга не врет)
все кодировки возвращают 97 на английское а)
кроме 2 байтовых
значит проблема аффтара сей темы сузилась до поиска где он имел наглость вписать 2 или того хуже 4 байтовую кодировку
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857687
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
asv79,

Тут другой дефект. Если кодировка не совпадала - мы бы видели информационный шум.

Но мы читаем большую часть нормально.
...
Рейтинг: 0 / 0
Чудеса с кодировкой
    #39857691
PetroNotC Sharp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mayton,
Будет анекдот если там на входе вопросы идут.
...
Рейтинг: 0 / 0
25 сообщений из 44, страница 1 из 2
Форумы / Java [игнор отключен] [закрыт для гостей] / Чудеса с кодировкой
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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