|
|
|
java.lang.StackOverflowError
|
|||
|---|---|---|---|
|
#18+
Добрый день коллеги! Столкнулся с такой проблемой. Есть объект, содержащий найденный файл по имени, с помощью метода resolveFile. Код: java 1. Когда entry.getName() не содержит русские символы, то вызов метода Код: java 1. проходит без ошибок. Когда же entry.getName(), содержит русские символы падает ошибка: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. Почему падает это исключение не могу понять, хотя догадываюсь, что дело в кодировке. Подскажите пожалуйста. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2013, 17:03:07 |
|
||
|
java.lang.StackOverflowError
|
|||
|---|---|---|---|
|
#18+
Полный stack ошибки покажите. Он либо зациклен где-то. Надо по зацикленому участку смотреть где и почему. Либо тупо не хватило размера стэка. Тогда его можно увелисить в настройках JVM. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2013, 17:10:48 |
|
||
|
java.lang.StackOverflowError
|
|||
|---|---|---|---|
|
#18+
StackOverflowError совершенно не обязательно связан с последними элементами стэке. Они там могли оказаться только потому что падающий код это очень часто делает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2013, 17:12:57 |
|
||
|
java.lang.StackOverflowError
|
|||
|---|---|---|---|
|
#18+
Полный стэк трейс ошибки: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. Последняя строка повторяется много раз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2013, 17:17:09 |
|
||
|
java.lang.StackOverflowError
|
|||
|---|---|---|---|
|
#18+
Похоже что дерево файловой системы сильно глубокое и VFS его всё сканирует причем используя рекурсию, что считается не разумным при работе с файловой системой. Возможно даже не глубокое дерево, а просто линки в файловой системе, которые зацикливают рекурсию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2013, 17:26:16 |
|
||
|
java.lang.StackOverflowError
|
|||
|---|---|---|---|
|
#18+
Версия VFS актуальная? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2013, 17:27:00 |
|
||
|
java.lang.StackOverflowError
|
|||
|---|---|---|---|
|
#18+
Версия vfs: 2.0-SNAPSHOT-20091012-PATCHED ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2013, 17:32:19 |
|
||
|
java.lang.StackOverflowError
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Тогда почему без русских символов такая же ошибка не падает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2013, 17:33:53 |
|
||
|
java.lang.StackOverflowError
|
|||
|---|---|---|---|
|
#18+
Roman46Тогда почему без русских символов такая же ошибка не падает? Путь совершенно одинаковый? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2013, 17:35:35 |
|
||
|
java.lang.StackOverflowError
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Да путь одинаковый. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2013, 17:38:08 |
|
||
|
java.lang.StackOverflowError
|
|||
|---|---|---|---|
|
#18+
Тогда странно. Меня вот ещё смущает что UnixFileSystem что-то парсит в US_ASCII, тогда как у вас русский откуда-то. Какая кодировка в системе? KOI8r? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2013, 17:41:16 |
|
||
|
java.lang.StackOverflowError
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Я использую библиотеку commons-compress.jar для того, чтобы разархивировать zip архив. Код: java 1. 2. 3. 4. 5. 6. Когда в архиве нет файлов с руским именем все разархивируется нормально. Как только попадается один русский символ падает эта ошибка. Код приведен не полностью. Только та часть где летит ошибка ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2013, 17:48:37 |
|
||
|
java.lang.StackOverflowError
|
|||
|---|---|---|---|
|
#18+
Но падает же VFS, зачем вы Zip сюда приплетаете? Какая системная кодировка и какая текущая кодировка в Java? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2013, 17:54:21 |
|
||
|
java.lang.StackOverflowError
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Как это можно узнать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2013, 18:06:22 |
|
||
|
java.lang.StackOverflowError
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Текущая кодировка Java UTF-8 идущая пл умолчанию. Кодировка файловой системы не знаю, так как код выполняется на сервере. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2013, 18:26:08 |
|
||
|
java.lang.StackOverflowError
|
|||
|---|---|---|---|
|
#18+
Странно, конечно. Версия 2.0, а package org.apache.commons.vfs, а не org.apache.commons.vfs2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2013, 18:59:46 |
|
||
|
java.lang.StackOverflowError
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Определил кодировку операционной системы ansi_x3.4-1968. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2013, 19:00:33 |
|
||
|
java.lang.StackOverflowError
|
|||
|---|---|---|---|
|
#18+
Отлично. ansi_x3.4-1968 это и есть US_ASCII. Выходит у вас в файловой системе не может быть имен с кириллицей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2013, 19:07:11 |
|
||
|
java.lang.StackOverflowError
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Объясните пожалуйста почему так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2013, 19:10:00 |
|
||
|
java.lang.StackOverflowError
|
|||
|---|---|---|---|
|
#18+
Roman46Объясните пожалуйста почему так? Что именно "почему так"? Google -> ansi_x3.4-1968 -> http://en.wikipedia.org/wiki/ASCII Это стандартный ASCII, который в Java US_ASCII, что мы и видели на stack trace. Там нет никаких "русских символов" ака кириллицы. То что VFS из-за этого уходит в StackOverflowError, это исключительно бага VFS. Можно его пропатчить. Можно зарепортить им баг. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.10.2013, 19:19:14 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=206&tid=2128437]: |
0ms |
get settings: |
7ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
119ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
2ms |
| others: | 228ms |
| total: | 447ms |

| 0 / 0 |
