|
|
|
Ошибка в java.util.Date при десериализации
|
|||
|---|---|---|---|
|
#18+
Ещё раз доброго времени суток! Имеется следующий процесс: 1) Создание некорого экземпляра класса и заполнение его полей из БД. 2) Сериализация этого экземпляра и пересылка его по сети посредством ObjectOutputStream таким вот образом Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 3) На другом конце соединения читаем прибывший поток и десериализуем его. Код: java 1. 2. 3. Суть проблемы в том, что одно из полей типа Date на 1 день отличается от того же поля исходного объекта. Как так происходит? Заранее спасибо за конструктивную помощь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2012, 16:12:36 |
|
||
|
Ошибка в java.util.Date при десериализации
|
|||
|---|---|---|---|
|
#18+
Часовые пояса разные? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2012, 16:20:51 |
|
||
|
Ошибка в java.util.Date при десериализации
|
|||
|---|---|---|---|
|
#18+
Откройте класс java.util.Date и посмотрите всё что касается метода normalize(). Не обойдите вниманием методы writeObject\readObject ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2012, 16:22:18 |
|
||
|
Ошибка в java.util.Date при десериализации
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, спасибо за наводку. По коду я понял примерно следующее: 1) Фактически при сериализации/десериализации Date используется long. Т.е. если поток по сети передался без ошибок, а так оно и есть, то причина моей проблемы явно где-то в другом месте. 2) Возвращаемое Normalize() значение зависит от TimeZone, но это не очень проясняет ситуацию, так как на разных машинах часовые пояса совпадают. Если Вы знаете в чём проблема, пожалуйста, отпишитесь, т.к. у меня нет тонны свободного времени в данный период чтобы по исходникам найти решение. Заранее спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2012, 16:50:12 |
|
||
|
Ошибка в java.util.Date при десериализации
|
|||
|---|---|---|---|
|
#18+
Или на тех машинах, где этот глюк проявился надо Timezone Updater Tool использовать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.08.2012, 16:54:40 |
|
||
|
Ошибка в java.util.Date при десериализации
|
|||
|---|---|---|---|
|
#18+
JDK/JRE до Java 6 update 20 включительно глючит с учётом сдвига на летнее время для некоторых часовых поясов. Установка патчей на часовые пояса для системы и tzupdater для jdk/jre - обязательны при любом раскладе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.08.2012, 18:18:52 |
|
||
|
|

start [/forum/topic.php?fid=59&fpage=274&tid=2131178]: |
0ms |
get settings: |
12ms |
get forum list: |
23ms |
check forum access: |
6ms |
check topic access: |
6ms |
track hit: |
36ms |
get topic data: |
20ms |
get forum data: |
6ms |
get page messages: |
76ms |
get tp. blocked users: |
3ms |
| others: | 282ms |
| total: | 470ms |

| 0 / 0 |
