重建序列化对象时出现类错误

时间:2013-01-04 10:48:57

标签: java deserialization

我有两个程序,HunterClient和HunterServer

两个程序都有一个主类和一个Message类。消息类是一个精确的副本,而不是一个在HunterClient项目中,一个在HunterServer项目中。 (两个都在课堂上减速)

这是我通过客户端发送第一个对象的方式

String str = scanner.next();
//Send down Stream
out.writeObject(new Message(str));
out.flush();

这是我在另一端收到对象的方式

try {
 Message message = (Message) in.readObject();
 } catch (Exception ex) {
            System.out.println("err... " + ex);
        }

然而,运行此命令并尝试从客户端向服务器发送消息,我收到以下错误消息。

错误... java.lang.ClassNotFoundException:hunterclient.Message

在HunterMessenger上收到的消息不是HunterClient。这两个程序都是作为netbeans项目构建的...我理解这个错误的方式是程序正在寻找猎人程序中的猎人类......我怎样才能使用它的原生信使类?

这是我的两个消息类

服务器

package huntermessenger;

import java.io.Serializable;

public class Message implements Serializable{

private String message;

public Message(String message) {
    this.message = message;
}

public String getMessage(){
    return message;
}
}

客户

package hunterclient;

import java.io.Serializable;

public class Message implements Serializable{

private String message;

public Message(String message) {
    this.message = message;
}

public String getMessage(){
    return message;
}
}

1 个答案:

答案 0 :(得分:0)

您是否已将HunterClient类设置为Serializable?