객체 직렬화 에러(NotSerializableException)가 나는데요...
크리미걸
JTable을 이용해서 영어단어장을 입력할 수 있게 만들어서 서버에 데이타를 전송시키려고 하는데요...
이런 에러가 뜨네요.
java.io.WriteAbortedException: writing aborted; java.io.NotSerializableException: javax.swing.JTable$CellEditorRemover
전송하려고 하는 클래스가...
class WordTable extends AbstractTableModel implements Serializable
이렇게 되어있거든요...
혹시 JTable 관련된 클래스는 객체직렬화를 시킬 수가 없는건가요?
-
PinkPearl
참조주소값만 복사가 되겠죠 ^^
-
유리
음... Class AbstractTableModel
All Implemented Interfaces: Serializable, TableModel
Direct Known Subclasses: DefaultTableModel
이렇게 나오는걸로 봐서 직렬화를 구현하고 있는거 같은데요?...
그렇다면 왠지 이게 문제 인거 같은데...
혹시.. 클래스를 복사(?) 하려고 할때
WordTable temp1 = new WordTable();
WordTabl -
도도
감사합니다. 한번 API를 뒤져볼께요~
-
맑은누리
AbstractTableModel이 직렬화 인터페이스를 구현하고 있는지 API에서 살펴보시기 바랍니다. 객체를 직렬화할려면 그 객체뿐만 아니라, 객체 내에서 참조하고 있는 참조객체들(클래스)도 직렬화를 구현하고 있어야 합니다. 자바의 기본 타입들이나 List나 Vector등은 기본적으로 직렬화를 구현하고 있기때문에 괜찮지만, 여기서는 잘은 모르겠지만.....아마도 테이블모델이 참조하고 있는 셀에디터가 직렬화가 안되어 있어서 에러가 나는 듯 싶네요.