|
|
|
jasperreport server и кодировки. Запутался...
|
|||
|---|---|---|---|
|
#18+
Всем привет. Пытаюсь освоить jasperreport server. Скачал, установил. В iReport создал отчет. Все хорошо... Затем отправил отчет на сервер. Вместо русских букв выводятся знака вопроса. В бд Firebird данные лежат в кодировке WIN1251. В TomCat URIEncoding="UTF-8". Пробовал устанавливать в Cp1251 - не помогло. Пробовал так-же устанавливать URIBodyEncoding в true - не помогло. Пробовал в отчете ввести переменную со значением Код: java 1. - знаки вопроса сменились на другие крокозяблики... Может кто подскажет, как правильно кодировку настроить? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2012, 12:22:05 |
|
||
|
jasperreport server и кодировки. Запутался...
|
|||
|---|---|---|---|
|
#18+
Нужно аккуратно дебажить. Кодировка в БД, скорее всего не причем. JDBC драйвер должен выдавать нормальные строки, если они в базе лежат правильно. Поэтому про этот слой можно вообще забыть. Ну, или просто проверить. Отчеты в PDF выводятся? Там могут не все шрифты поддерживать unicode. Попробуйте для тестовых целей в HTML. Настройте датальное логирование и посмотрите какие данные приехали из базы. Как их JasperReports распознал. new String(data.getBytes("Cp1251"),"UTF-8") - это худшее из решений. Применяется только в безвыходных ситуациях. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2012, 12:26:29 |
|
||
|
jasperreport server и кодировки. Запутался...
|
|||
|---|---|---|---|
|
#18+
BlazkowiczНужно аккуратно дебажить. Кодировка в БД, скорее всего не причем. JDBC драйвер должен выдавать нормальные строки, если они в базе лежат правильно. Поэтому про этот слой можно вообще забыть. Ну, или просто проверить. Отчеты в PDF выводятся? Там могут не все шрифты поддерживать unicode. Попробуйте для тестовых целей в HTML. Настройте датальное логирование и посмотрите какие данные приехали из базы. Как их JasperReports распознал. new String(data.getBytes("Cp1251"),"UTF-8") - это худшее из решений. Применяется только в безвыходных ситуациях. До PDF пока не дошел. Непосредственно JasperReport Server, установленный под TomCat генерирует HTML страницу. Если из под iReport сделать экспорт в HTML - то все корректно отображается. При этом кодировка страницы UTF-8. Дебажить нечем пока. Есть iReport и TomCat c JasperReports Server. Надеялся, что конфигами можно обойтись... new String(data.getBytes("Cp1251"),"UTF-8") - это худшее из решений, но и оно не помогает... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2012, 12:56:37 |
|
||
|
jasperreport server и кодировки. Запутался...
|
|||
|---|---|---|---|
|
#18+
С кодировками нет простых решений, потому что существует несколько уровней где они могли сломаться. Сохраните HTML из iReport и JR Server в файл и сравните содержимое. Что именно будет в сломаном файле? Нужно смотреть на тот текст, который выходит чтобы понять откуда вылезла не так кодировка. Сначала вы сказали что там вопросительные знаки. Это, обычно, обозначает что символ безвозвратно утерян и new String/getBytes уже не вернут его к жизни. А вот если вместо вопросительных знаков разнообразные символы, то можно воспользоваться онлайн сервисами чтобы понять какая кодировка лишняя. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.07.2012, 13:02:08 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=280&tid=2131412]: |
0ms |
get settings: |
19ms |
get forum list: |
27ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
44ms |
get topic data: |
14ms |
get forum data: |
3ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
| others: | 312ms |
| total: | 482ms |

| 0 / 0 |
