안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요 한참 안드로이드를 공부하고 있는 대학생 입니다.
염치 없이 도움을 받고자 요렇게 또 글을 올리네요.^^;
일단 프로그램 구조는...
안드로이드랑 java 서버에 각각 Work 라는 클래스를 두고.
(보내는 쪽이 안드로이드, 받는쪽이 java 서버)
Work 객체 형식으로
ObjectOutputStream 과 ObjectInputStream을 이용해서 전송하고자 합니다.
일단 결론부터 말씀 드리면
과 같은 에러가 납니다.
===================안드로이드쪽 Work 클래스 입니다.=================
===================== java Server 쪽 Work 클래스 파일 입니다. ==========================
제가 보기엔.. Android 쪽은 package 부분이 있고.... JAVA 쪽에는 없어서.
Work를 서로 다른 클래스형으로 인식하는것 같은데....
Android쪽 package를 빼도 안되고 JAVA 쪽에 package를 추가해도 안되네요.ㅜ.ㅜ
이걸 어떻게 해결 해야 할까요?
고수님들의 소중한 한말씀 기다리고 있겠습니다.ㅜ.ㅜ 제발~~~
참고를 위해서 첨부파일에 소스코드 함께 올립니다..
(안드로이드 쪽에는 서버의 아이피를 입력해야 합니다.)
염치 없이 도움을 받고자 요렇게 또 글을 올리네요.^^;
일단 프로그램 구조는...
안드로이드랑 java 서버에 각각 Work 라는 클래스를 두고.
(보내는 쪽이 안드로이드, 받는쪽이 java 서버)
Work 객체 형식으로
ObjectOutputStream 과 ObjectInputStream을 이용해서 전송하고자 합니다.
일단 결론부터 말씀 드리면
과 같은 에러가 납니다.
===================안드로이드쪽 Work 클래스 입니다.=================
package android.project.assystem; import java.io.*; class Work implements Serializable { String wid; String phone; String addr; String eid; String model; String reason; String result; // Date fdate; // public Work(String wid, String phone, String addr, String eid, String model, String reason, String result, Date fdate) public Work(String wid, String phone, String addr, String eid, String model, String reason, String result) { this.wid = wid; this.phone = phone; this.addr = addr; this.eid = eid; this.model = model; this.reason = reason; this.result = result; // this.fdate = fdate; } public String getWId() { return wid; } public String getPhone() { return phone; } public String getAddr() { return addr; } public String getEId() { return eid; } public String getModel() { return model; } public String getReason() { return reason; } public String getResult() { return result; } // public Date getFDate() { return fdate; } @Override public String toString(){ return wid + " " + phone + " " + addr + " " + eid + " " + model + " " + reason + " " + result ; } }
===================== java Server 쪽 Work 클래스 파일 입니다. ==========================
import java.io.*; class Work implements Serializable { String wid; String phone; String addr; String eid; String model; String reason; String result; // Date fdate; // public Work(String wid, String phone, String addr, String eid, String model, String reason, String result, Date fdate) public Work(String wid, String phone, String addr, String eid, String model, String reason, String result) { this.wid = wid; this.phone = phone; this.addr = addr; this.eid = eid; this.model = model; this.reason = reason; this.result = result; // this.fdate = fdate; } public Work() { }; public String getWId() { return wid; } public String getPhone() { return phone; } public String getAddr() { return addr; } public String getEId() { return eid; } public String getModel() { return model; } public String getReason() { return reason; } public String getResult() { return result; } // public Date getFDate() { return fdate; } @Override public String toString(){ return wid + " " + phone + " " + addr + " " + eid + " " + model + " " + reason + " " + result ; } }
제가 보기엔.. Android 쪽은 package 부분이 있고.... JAVA 쪽에는 없어서.
Work를 서로 다른 클래스형으로 인식하는것 같은데....
Android쪽 package를 빼도 안되고 JAVA 쪽에 package를 추가해도 안되네요.ㅜ.ㅜ
이걸 어떻게 해결 해야 할까요?
고수님들의 소중한 한말씀 기다리고 있겠습니다.ㅜ.ㅜ 제발~~~
참고를 위해서 첨부파일에 소스코드 함께 올립니다..
(안드로이드 쪽에는 서버의 아이피를 입력해야 합니다.)
개별적인 패키지로 묶어서 양쪽에 똑같이 넣어준후 import 시켜서 써야 되지 않나 싶네요.
양쪽 Work 클래스를 보면, 한쪽엔 빈 생성자가 빠져있고, 좀 다른거 같네요.
완전히 같아야 ClassCast 에도 문제가 없을거 같네요. 그래서 이름은 같지만, Class 를 찾지 못하는것이
아닐까 싶습니다.