자꾸 이런 에러가 발생합니다.
시리얼 라이즈로 했씁니다...
근데 왜 자꾸...이럴까요...아 힘들다...
java.io.EOFException
at java.io.ObjectInputStream$BlockDataInputStream.peekByte(ObjectInputStream.java:2570)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1314)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:368)
at wdb.getset.run(getset.java:51)
at java.lang.Thread.run(Thread.java:636)
---원본----
public class getset implements Runnable{
public static final String ServerIP = "192.168.56.198";
private Socket clients;
public getset(Socket client){
this.clients = client;
}
public void run()
{
ObjectOutputStream oos = null;
try {
oos = new ObjectOutputStream(clients.getOutputStream());
} catch (IOException e2) {
// TODO Auto-generated catch block
e2.printStackTrace();
}
ObjectInputStream ois = null;
try {
ois = new ObjectInputStream(clients.getInputStream());
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
try {
Data query = new Data();
while(true)
{
query = (Data)ois.readObject();===================>여기서 문제가 발생하네요..
if(query.job_number==1)
{
System.out.println(query.id);
query.logincheck=true;
try
{
oos.writeObject(query);
}
catch (IOException e)
{
// TODO Auto-generated catch block
System.out.println("no-ok");
e.printStackTrace();
}
}
else if(query.job_number==2)
{
System.out.println(query.password);
for(int i=0;i<5;i++)
{
seat_info[i] = query.seat_info[i];
}
for(int i=0;i<5;i++)
{
System.out.print(seat_info[i]);
System.out.print(query.seat_info[i]);
}
}
}
}
catch (Exception e)
{
System.out.println("S: Error");
e.printStackTrace();
}
finally
{
try
{
clients.close();
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("S: Done.");
}
}