Нечитаемые Символы В Коде Java-агента

Мыш

Премиум
12.02.2008
1 097
10
#1
Здрасьте. Жила-была у меня серверная база с Java-агентами. Были в ней комментарии на русском, русские текстовые константы и т.д. Открываю на днях код агента - все русские буквы отображаются в виде эдаких одинаковых ромбиков. Причем есть подозрение, что "ромбики" не только отображаются, но и в коде работают (константы, имею в виду).
Незадолго до того обновил Дизайнер до 8.5.3 FP3, но агенты после этого ТОЧНО не пересохранял. Ромбики увидел после первого же открытия кода. Вообще с этой базой ничего не делал - не реплицировал, не менял свойств, не обновлял с шаблона. В базе сугубо системные агенты лежат... Версию сервера тоже не трогал - живет уже тыщу лет. В др. базах и в лотусовых агентах - все норм.
Папку workspace на клиенте удалял - не помогло... Искал настройки в Дизайнере - везде по дефолту UTF-8. Нифефо не понимаю... (с) :)
 

Вложения

savl

Lotus team
28.10.2011
2 136
105
#2
Причем есть подозрение, что "ромбики" не только отображаются, но и в коде работают (константы, имею в виду).
Хорошо бы проверить, только непересохраняя... Если так, то косяк.
Но пока похоже просто на проблему с отображением шрифтов, почти как тут Font problem 8.5.3

UPD: а в 8.5.2 есть возможность открыть? Может на старой версии прокатит, пересохранить под ней и уже открыть в 8.5.3.
 

Kee_Keekkenen

Well-known member
05.09.2006
639
4
#3
интересно было бы посмотреть на такие ромбики..
выложи копию базы с частью кода - агент (кусок с комментами)..
может действительно проблема со шрифтами..
 

Мыш

Премиум
12.02.2008
1 097
10
#4
Проверить, что в коде, елы-палы, пока не могу - не помню, что там за строка была :))) (бывает просто весьма редкая ошибка, и нужно анализировать именно возвращаемый текст). Картинку прикрепил в 1-е сообщение...
 

savl

Lotus team
28.10.2011
2 136
105
#5
Мыш
картинка к сожалению лишь отображение того, что ты видишь... Вопрос в том как исходник выглядит на самом деле и как он открывается у других...
Банально проверить на другой машине есть вариант?
 

Мыш

Премиум
12.02.2008
1 097
10
#6
savl, да, туплю чего-то... Выложить базу, к сожалению, не могу - слишком много приватной инфы... Попробую с др. машины. Если поймаю ошибку, и код не сработает (т.е., "мусор" будет и в работе) - напишу.
 

savl

Lotus team
28.10.2011
2 136
105
#7
Мыш
Еще попробуй в этом же агенте по-русски писать, что будет?
сменить шрифт отображения
и естественно не сохранять.
Еще вариант сделать копию и играться там :)
 

Мыш

Премиум
12.02.2008
1 097
10
#9
savl, попробовал с другой машины (8.5.2 на XP) - кракозябры другие(!), но тоже есть. :)
По-русски пишет с обеих машин и сохраняет нормально.
garrick, спасибо, но не помогло.
Соббсно, мне не столько больно, сколько обидно - чувствую себя оскобленным индусами... :)))
На досуге подниму базу из бэкапа. Спасибо всем за участие!
 

savl

Lotus team
28.10.2011
2 136
105
#10
в xml выгрузить для анализа и notepad++ открыть.
Если даже в xml будут они, то точно только бэкап. Не верю я в то, что так может биться код...
 

lmike

нет, пердело совершенство
Lotus team
27.08.2008
6 584
271
#11
инфа уже погублена (если было пересохранение) дизайна :)
это известная трабла косоруких индусов, на платформе уиндоуз...
уж как цать лет доступна UTF-8, но писатели нотусовых дизайнеров не желают понимать, что win1251 (как и др. не англицкие)->UTF-8 = квадратики
видать в сорсах была win1251...
как лечить еще не испорченные (не пересохр. сорцы) - надо подумать
 

lmike

нет, пердело совершенство
Lotus team
27.08.2008
6 584
271
#12
вернее - это отображение платформой кодировки UTF-8, когда в шрифте нет соответ. символов, например - винда считает что нужно отображать win1251.
 

lmike

нет, пердело совершенство
Lotus team
27.08.2008
6 584
271
#14
попытаться поменять шрифт в дизайнере
если прога желает казать в вин1251 - шрифт менять бесполезно, ну если тока не самому сделать извращенческий под желание винды ;)
но если уже так сохранили (с квадратиками) - ничего не спасёт (в исходниках уже убиты символы)
 

garrick

Lotus team
26.10.2009
899
61
#15
Здрасьте. Жила-была у меня серверная база с Java-агентами...
Столкнулся с аналогичной проблемой. В 8.5.2 везде по дефолту была виндусячая кодировка win-1251, после обновления дизайнера до 8.5.3 он открывает весь java код с кодировкой utf-8. Если не лазить в текст агента и ничего там не править, то оно нормально работает как и раньше, но если вам потребуется что-то менять в таком агенте, то надо сначала настроить кодировку для него. Не пытайесь редактировать и сохранять текст агента до изменения кодировки в свойствах проекта, иначе весь русский текст будет потерян.
Решение: надо зайти в свойства проекта (меню Project-Properties), установить кодировку Windows-1251 и нажать Apply (последнее обязательно!).
 

Вложения

VladSh

начинающий
Lotus team
11.12.2009
1 262
6
#16
Дали новый комп с Win7 x64 EN с доустановленным русским MUI. Открываю базы с локала, эклипсовский дизайнер в LS-библах показывает русские буквы нормально, а в Java-библах вопросительными знаками.
Если зайти в настройки кодировок, то по умолчанию стоит кодировка cp1252. В списке cp1251 отсутствует. Переключение на utf-8 и другие не помогает.
Что посоветуете?
 

lmike

нет, пердело совершенство
Lotus team
27.08.2008
6 584
271
#17
а ежели воспользоваться вариантом сохранения проекта на диск...
а уж на диске массово сменить кодировку в файлах
Создайте on-disk версию какой-нибудь базы. (Для Designer 8.5.3 - правой кнопкой на БД в навигаторе, меню Team Development\Set Up Source Control for this Application...)
отсюда
 

hosm

* so what *
18.05.2009
2 442
6
#18
VladSh а в самой системе Win7 никак нельзя поставить по дефолту язык Русский? У меня русская ОС, но когда-то инглиш дефолтным ставила, подобная трабла была.
 

VladSh

начинающий
Lotus team
11.12.2009
1 262
6
#20
Спасибо всем! Помог вариант Лены - сейчас такие настройки: "расположение" = "Украина", "Язык ввода по умолчанию" = "Английский", во всех остальных местах Русский. Вопросительные знаки исчезли и в списке кодировок в настройках Domino Eclipce появилась cp1251, на которой сейчас и стоит флажок радиобаттона Encodind "Default".