Регистрация  |  Вход

Кракозябры вместо русских символов на Visualforce странице

Привет народ.

Что-то я туплю сейчас. Подскажите что не так.

Создал VF страницу и на ней в html вставил русский текст
на странице вместо русского слова появилось ������

И тут я понял, что никогда за всю карьеру не выводил русский текст на странице до сегодняшнего дня (поэтому и с проблемой не сталкивался).

Так вот вопрос куда смотреть? если бы это был обычный сервер, то задача решается очень просто - кодировкой файла исходника и отдача правильной кодировки в заголовке.

Млин, а на Salesforce это как делается?

Привет народ.

Что-то я туплю сейчас. Подскажите что не так.

Создал VF страницу и на ней в html вставил русский текст
на странице вместо русского слова появилось ������

И тут я понял, что никогда за всю карьеру не выводил русский текст на странице до сегодняшнего дня (поэтому и с проблемой не сталкивался).

Так вот вопрос куда смотреть? если бы это был обычный сервер, то задача решается очень просто - кодировкой файла исходника и отдача правильной кодировки в заголовке.

Млин, а на Salesforce это как делается?

От млин!!! Вот что еще заметил - это происходит именно после сохранения из Eclipse.
Если создать страницу в браузере - все отлично выводит русский язык.
Пересохранение той же страницы в Eclipce меняет все на кракозябры (их даже видно в браузере в режиме редактирования страницы)

Буду разбираться что с Eclipce.

UDP: в Eclipce в настройках стоит что файлы сохраняются в UTF-8 - по идее так и должно быть

От млин!!! Вот что еще заметил - это происходит именно после сохранения из Eclipse.
Если создать страницу в браузере - все отлично выводит русский язык.
Пересохранение той же страницы в Eclipce меняет все на кракозябры (их даже видно в браузере в режиме редактирования страницы)

Буду разбираться что с Eclipce.

UDP: в Eclipce в настройках стоит что файлы сохраняются в UTF-8 - по идее так и должно быть

!!! РЕШЕНО

Странное наблюдение.

Заинтересовала новая настройка в проекте Eclipce для Salesforce:
"Use Tooling API deploy path when possible"

По умолчанию галочка стоит (чтобы использовать новый API)
(кстати я заметил как при этой галочке быстро сохраняются изменения - прямо молниеносно)

Убрал галочку - сохранение стало по скорости как и раньше (значит заработал старый метод - через metadata)

И О ЧУДО! Кракозябры стали русскими символами.

Проверил еще раз - включил использованием Tooling API - кракозябры вернулись.

Вот такая интересная штука.
Реально, только чудо помогло найти в чем причина.
С тем же успехом можно было копаться очень долго.

[b]!!! РЕШЕНО[/b]

[b]Странное наблюдение.[/b]

Заинтересовала новая настройка в проекте Eclipce для Salesforce: 
"[b]Use Tooling API deploy path when possible[/b]"

По умолчанию галочка стоит (чтобы использовать новый API)
(кстати я заметил как при этой галочке быстро сохраняются изменения - прямо молниеносно)

Убрал галочку - сохранение стало по скорости как и раньше (значит заработал старый метод - через metadata)

И О ЧУДО! Кракозябры стали русскими символами.

Проверил еще раз - включил использованием Tooling API - кракозябры вернулись.

Вот такая интересная штука.
Реально, только чудо помогло найти в чем причина.
С тем же успехом можно было копаться очень долго.

ОСТОРОЖНО!

Хочу предупредить - будьте внимательны играясь с настройкой "Use Tooling API deploy path when possible".

После ее переключения Eclipse сошел с ума зациклился на перестроении проекта (building workspace).

Я особо этому значения не придал, пока не узнал, что каким-то образом Eclipse умудрился весь проект полностью залить на орг. Теперь все классы страницы и триггеры стоить Last Modified by @Me.

Обидно за такую подставу. Я не первый год работаю с Force.com IDE и точно мозгов бы хватило не сохранять весь проект. Но вот так произошло.

Будьте внимательны. Тренируйтесь с настройками над собственными проектами

ОСТОРОЖНО!

Хочу предупредить - будьте внимательны играясь с настройкой "Use Tooling API deploy path when possible".

После ее переключения Eclipse сошел с ума зациклился на перестроении проекта (building workspace).

Я особо этому значения не придал, пока не узнал, что каким-то образом Eclipse умудрился весь проект полностью залить на орг. Теперь все классы страницы и триггеры стоить Last Modified by @Me.

Обидно за такую подставу. Я не первый год работаю с Force.com IDE и точно мозгов бы хватило не сохранять весь проект. Но вот так произошло. 

Будьте внимательны. Тренируйтесь с настройками над собственными проектами :) 

Спасибо. Полезное инфо. А то прям беда с русским.

Спасибо. Полезное инфо. А то прям беда с русским.

Ну вот еще тогда смотри - финальная версия исследований.

Из-за траблов с переключением на работу с метадатой API - вернул назад все как было.
Т.е. настройки на новую версию API как по умолчанию - следовательно кракозябки вернулись.
(Tooling API из Eclipse сохраняет русский текст в виде ������. Заметил кстати это и в Execute Anonymous - вставил в отрывок кода русский - получи в log'e кракозябры).

Поэтому было принято волевое решение (И кстати правильное с точки зрения архитектуры разработки под Salesforce) - разрабатывать все на английском, а потом переводить на русский с помощью стандартных средств Salesforce (Transalation Wizard и Custom Labels). Да, это может и добавляет немного лишних телодвижений для русских приложений, зато потом заказчик скажет спасибо.

Ну вот еще тогда смотри - финальная версия исследований.

Из-за траблов с переключением на работу с метадатой API - вернул назад все как было.
Т.е. настройки на новую версию API как по умолчанию - следовательно кракозябки вернулись.
(Tooling API из Eclipse сохраняет русский текст в виде ������. Заметил кстати это и в Execute Anonymous - вставил в отрывок кода русский - получи в log'e кракозябры).

Поэтому было принято волевое решение (И кстати правильное с точки зрения архитектуры разработки под Salesforce) - разрабатывать все на английском, а потом переводить на русский с помощью стандартных средств Salesforce (Transalation Wizard и Custom Labels). Да, это может и добавляет немного лишних телодвижений для русских приложений, зато потом заказчик скажет спасибо.

Dmitry Shnyrev
Поэтому было принято волевое решение (И кстати правильное с точки зрения архитектуры разработки под Salesforce) - разрабатывать все на английском, а потом переводить на русский с помощью стандартных средств Salesforce (Transalation Wizard и Custom Labels). Да, это может и добавляет немного лишних телодвижений для русских приложений, зато потом заказчик скажет спасибо.

Да это правильный путь. Будут силы и время - напиши потом статью в блог, надо бы изучить эти Кастом лейблс.

[quote="Dmitry Shnyrev"]Поэтому было принято волевое решение (И кстати правильное с точки зрения архитектуры разработки под Salesforce) - разрабатывать все на английском, а потом переводить на русский с помощью стандартных средств Salesforce (Transalation Wizard и Custom Labels). Да, это может и добавляет немного лишних телодвижений для русских приложений, зато потом заказчик скажет спасибо.[/quote]

Да это правильный путь. Будут силы и время - напиши потом статью в блог, надо бы изучить эти Кастом лейблс. 

C customLabels всё понятно. Но это действительно много телодвижений. И не всегда оправданно.
Потому я ступил на тёмную сторону Силы и попробовал MavensMate. Сначала не пошло, а потом прям понравилось. И хайлайтинг приятный, и code assist работает, в отличие от Eclipse. Ну и русский не косячит.

C customLabels всё понятно. Но это действительно много телодвижений. И не всегда оправданно.
Потому я ступил на тёмную сторону Силы и попробовал MavensMate. Сначала не пошло, а потом прям понравилось. И хайлайтинг приятный, и code assist работает, в отличие от Eclipse. Ну и русский не косячит.

Все больше и больше поклонников MavenMate
Уже руки чешутся попробовать.
Мой первый опыт год назад напрочь отбил все желание, когда я сначала пару дней пытался его установить, а потом после нескольких дней использования он обновился и благополучно умер. По ходу мне повезло попасть на фазу активной разработки и словить пару глюков.
Надеюсь сейчас все не так

Все больше и больше поклонников MavenMate :)
Уже руки чешутся попробовать.
Мой первый опыт год назад напрочь отбил все желание, когда я сначала пару дней пытался его установить, а потом после нескольких дней использования он обновился и благополучно умер. По ходу мне повезло попасть на фазу активной разработки и словить пару глюков.
Надеюсь сейчас все не так :) 

Небольшое наблюдение в тему:
Называю последний период (сентябрь месяц) "Осенний багопад".
Купил себе новый комп и как всегда стал ставить на него свой привычный набор инструментов. Делал это не раз прежде, никогда проблем не возникало на старых компах, на работе.
А тут процесс растянулся на неделю в жутких страданиях:
1. проблема с кодировкой в Eclipce - причина - новый Tooling API.
2. мой любимы VirtualBox - последняя версия 4.3.16 напрочь отказался запускать виртуальные машины - причина - баг известный и длится с версии 4.3.12 и никто не чешется его фиксить. Пришлось ставить старую версию, которая стояли на старом компе - все заработало.
3. мой любимый puntoSwitcher последней версии в RubyMine(Intelij Idea) вместо переключения раскладки в последнем введенном слове сносил всю строку полностью - посмотрел на старом компе версию, удалил новую, поставил старую - все заработало.
4. после развертывание проекта данного сайта на локалке и подтягивание последних gems (пакетов) сайт напрочь отказался запускаться - причина - один из gems последней версии имел глюк, версию пришлось указать старую - все заработало.
5. попытки завести OpenSSH на новом компе чтобы связать git с репозиторием Bitbucket - убил целый день и windows, хотя до этого никогда проблем не испытывал - переехал на putty с его pageant.

Ну просто непруха какая-то. Может святой водой комп окропить?

PS. не поверите, punto switche как почувствовал что про него пишу - первый раз за месяц бодро показал окно с предложение обновиться, хотя в настойках я отключил проверку обновлений!!!! Жесть!!!

Небольшое наблюдение в тему:
Называю последний период (сентябрь месяц) "[b]Осенний багопад[/b]".
Купил себе новый комп и как всегда стал ставить на него свой привычный набор инструментов. Делал это не раз прежде, никогда проблем не возникало на старых компах, на работе.
А тут процесс растянулся на неделю в жутких страданиях:
1. проблема с кодировкой в Eclipce - причина - новый Tooling API.
2. мой любимы VirtualBox - последняя версия 4.3.16 напрочь отказался запускать виртуальные машины - причина - баг известный и длится с версии 4.3.12 и никто не чешется его фиксить. Пришлось ставить старую версию, которая стояли на старом компе - все заработало.
3. мой любимый puntoSwitcher последней версии в RubyMine(Intelij Idea) вместо переключения раскладки в последнем введенном слове сносил всю строку полностью - посмотрел на старом компе версию, удалил новую, поставил старую - все заработало.
4. после развертывание проекта данного сайта на локалке и подтягивание последних gems (пакетов) сайт напрочь отказался запускаться - причина - один из gems последней версии имел глюк, версию пришлось указать старую - все заработало.
5. попытки завести OpenSSH на новом компе чтобы связать git с репозиторием Bitbucket - убил целый день и windows, хотя до этого никогда проблем не испытывал - переехал на putty с его pageant.

Ну просто непруха какая-то. Может святой водой комп окропить?

PS. :D не поверите, punto switche как почувствовал что про него пишу - первый раз за месяц бодро показал окно с предложение обновиться, хотя в настойках я отключил проверку обновлений!!!! Жесть!!!

Уже сразу священника вызывай :)

Уже сразу священника вызывай :)

Опять сегодня Eclipse, сука, выкинул проблему (вернее повторил)

После того как комп вырубился (свет отрубили) - заново запустил Eclipse, зашел в свой файл, продолжил его редактировать и нажал ctrl+s - после чего заметил что долго идет сохранение. Посмотрел на орге - все файлы последние изменения сделаны мной только что. ВСЕ файлы на орге. Это жесть какая-то!!!

Я даже не понимаю, почему Eclipse принимает решение это делать. Никаких дополнительных запрсов, ничего!!!! Просто взял и залил все локальные файлы на орг - не важно последняя это версия или нет.

Будьте осторожны.

UPD: нет, не все файлы перезаписал - только те что не было конфликтов с более новой версией на орге. Т.е. более "новые" файлы не перезаписались. Пока пронесло.

[b]Опять сегодня Eclipse, сука, выкинул проблему (вернее повторил)[/b]

После того как комп вырубился (свет отрубили) - заново запустил Eclipse, зашел в свой файл, продолжил его редактировать и нажал ctrl+s - после чего заметил что долго идет сохранение. Посмотрел на орге - все файлы последние изменения сделаны мной только что. ВСЕ файлы на орге. Это жесть какая-то!!!

Я даже не понимаю, почему Eclipse принимает решение это делать. Никаких дополнительных запрсов, ничего!!!! Просто взял и залил все локальные файлы на орг - не важно последняя это версия или нет.

Будьте осторожны.

UPD: нет, не все файлы перезаписал :) - только те что не было конфликтов с более новой версией на орге. Т.е. более "новые" файлы не перезаписались. Пока пронесло.