|
|
|
передача json из jquery в servlet
|
|||
|---|---|---|---|
|
#18+
Добрый день! "Прошу помощи клуба", так как второй день не могу никак победить такую проблему: есть js, который по нажатию кнопки запускает такую команду Код: javascript 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. функция StrToJSON достаточно простая: Код: javascript 1. 2. 3. 4. 5. есть сервлет, который запускается при вызове ajax Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. так вот если в адресе латинские буквы - все нормально, а как только русские проскакивают, сразу получаю ошибку: Failed parsing JSON source: {...} to Json com.google.gson.TokenMgrError: Lexical error at line 1, column 5. Encountered: "М" (1052), after : "" Применил уже много разных вариантов перекодировки, но ничего не срабатывает :-( Подскажите, как нужно поступить? Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2014, 16:23 |
|
||
|
передача json из jquery в servlet
|
|||
|---|---|---|---|
|
#18+
А если так попробовать: Код: java 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2014, 20:59 |
|
||
|
передача json из jquery в servlet
|
|||
|---|---|---|---|
|
#18+
spb_kostyaПрименил уже много разных вариантов перекодировки, но ничего не срабатывает :-( Передаете параметрами же? А java такой загадочный зверек, в его стандартах определили, что servlet принимает параметры исключительно в ISO-8859-1. Браузеры обычно не в курсе (ну делают вид). И передают иначе. Прежде чем начать работать с параметром его положено превратить в массив байтов (например .getBytes("ISO-8859-1")). А потом превратить массив байтов в строку (методом перебора определив нужную кодировку). Есть правда вариант обернуть на клиенте каким-нибудь encodeURIComponent и уже разворачивать в сервлете (ну или делать пост в варианте application/x-www-form-urlencoded) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2014, 23:59 |
|
||
|
передача json из jquery в servlet
|
|||
|---|---|---|---|
|
#18+
Кодировка запросов настраивается в конфигах сервера, но по быстрому решить можно так : на клиенте Код: javascript 1. на сервере Код: java 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2014, 10:14 |
|
||
|
передача json из jquery в servlet
|
|||
|---|---|---|---|
|
#18+
из предложенных вариантов без ошибки отработал только вариант такой: Код: java 1. 2. но при этом русские буквы превращаются в вопросики и теряются уже похоже навсегда... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2014, 17:22 |
|
||
|
передача json из jquery в servlet
|
|||
|---|---|---|---|
|
#18+
в конечном итоге получилось такая реализация: вместо A1 a1 = new Gson().fromJson(jsonString, A1.class); написал так: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2014, 14:46 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=181&tid=2127427]: |
0ms |
get settings: |
4ms |
get forum list: |
8ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
40ms |
get topic data: |
6ms |
get forum data: |
2ms |
get page messages: |
25ms |
get tp. blocked users: |
1ms |
| others: | 198ms |
| total: | 286ms |

| 0 / 0 |
