|
|
|
ObjectOutputStream - NotSerializableException???
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, вот такая беда у меня, копался чуток в инете, есть темы похожие, но мне не получается. Вот здесь есть похожее http://cloud-cuckoo.com.ua/content/java-serializatsiya-rabota-s-objectoutputstream-objectinputstream Кто сталкивался подскажите пож!!! Пробую сделать многопоточный сервер. Пока все получается, но мне нужно передать на клиенты объект через который они будут общаться. При попытке передачи такого объекта, я получаю NotSerializableException - что нужно сериализировать, зачем? Спасибо! Код: sql 1. Клиент посылает название сервера главному серверу. Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. Сервер смотрит если сервера с таким именем еще нет - создает и возвращает объект(должен возвращать), Все работает, но как только суну в Стрим объект типа ChessMultiServerThread - вылетает NotSerializableException! Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. Сервер для коммуникации между клиентами.(Только набросок - логика еще не зашита) Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2012, 14:39:58 |
|
||
|
ObjectOutputStream - NotSerializableException???
|
|||
|---|---|---|---|
|
#18+
_webdev_Сервер смотрит если сервера с таким именем еще нет - создает и возвращает объект(должен возвращать), Все работает, но как только суну в Стрим объект типа ChessMultiServerThread - вылетает NotSerializableException! Во-первых есть такой интерфейс Serializable. Стоит почитать про что он. Во-вторых сериализация нужна чтобы передать данные. Ваш ChessMultiServerThread никаких особых данных не содержит. Зачем вы его пытаетесь сериализовать? Там внутри ничего похожего на Serializable классы нет. Ни Thread, ни Socket, ни потоки IO. Это всё классы поведения, сильно завязаные на текущую систему. Их нельзя сериализовать и полностью восстановить из данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2012, 14:51:45 |
|
||
|
ObjectOutputStream - NotSerializableException???
|
|||
|---|---|---|---|
|
#18+
Ну это понятное дело, что я первым делом попробовал сделать передаваемый класс "implements Serializible", не идет. Тут мне подсказали, что "Thread" сериализировать неззя. Вопрос следующий, я если я уберу "extends Thread" - я смогу работать с этим объектом как с посредником между двумя клиентами? Тоисть если я передам обоим клиентам этот же объект по идее они должны через него общаться? Спасибо. BlazkowiczВаш ChessMultiServerThread никаких особых данных не содержит.Я же написал, что там еще никакой логики не зашито, это пока набросок.. на понимание правильно ли все работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2012, 18:03:45 |
|
||
|
ObjectOutputStream - NotSerializableException???
|
|||
|---|---|---|---|
|
#18+
По-моему вы заново пытаетесь изобрести RMI ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2012, 18:08:20 |
|
||
|
ObjectOutputStream - NotSerializableException???
|
|||
|---|---|---|---|
|
#18+
BlazkowiczТам внутри ничего похожего на Serializable классы нет. Ни Thread, ни Socket, ни потоки IO. _webdev_Тут мне подсказали, что "Thread" сериализировать неззя. Кто же это мог быть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.05.2012, 18:09:49 |
|
||
|
|

start [/forum/topic.php?fid=59&tid=2131800]: |
0ms |
get settings: |
10ms |
get forum list: |
18ms |
check forum access: |
2ms |
check topic access: |
3ms |
track hit: |
37ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
43ms |
get tp. blocked users: |
2ms |
| others: | 347ms |
| total: | 476ms |

| 0 / 0 |
