我有一个servlet和一个小程序,在java中共享一个自定义对象:
public class Apartment {
public String id_apartment;
public String user_owner;
public String address;
}
并且servlet以这种方式传递对象:
OutputStream outstr = response.getOutputStream();
ObjectOutputStream oos = new ObjectOutputStream(apartment);
oos.writeObject(apartments);
oos.flush();
oos.close();
并且applet以这种方式接收它:
InputStream instr = con.getInputStream();
ObjectInputStream inputFromServlet = new ObjectInputStream(instr);
Apartment apart = (Apartment) inputFromServlet.readObject();
inputFromServlet.close();
instr.close();
但applet给了我一个错误:java.lang.ClassNotFoundException: servlet_package.Apartment
,我在applet jar和servlet包中创建了Apartment类,但是不起作用......我怎么能这样做?
我在SO上发现了这个问题:Passing custom Objects from applet to servlet
但我无法理解答案......
任何帮助?
答案 0 :(得分:1)
您不能在servlet和applet中的不同包中创建相同的类。您必须创建一个唯一的,唯一的Apartment类,编译它,并将它放在servlet的类路径中,并放在applet的类路径中。同一个类文件必须由双方共享。