对象逆序列化报错:java.lang.ClassNotFoundException
来源:互联网 发布:工程合同审批软件 编辑:程序博客网 时间:2024/06/05 05:16
一个bug接受到的数据总是说类找不到,
java.lang.ClassNotFoundException: xxxxxxxxxxxx
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at java.io.ObjectInputStream.resolveClass(ObjectInputStream.java:622)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1593)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1514)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1750)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1347)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:369)
at xxxxxxxxxxxxxxxxx(TestMetadata.java:103)
提示类找不到,但实际上类文件是确确实实存在的,那就上网搜,果然找到答案。
可以参考文章: http://www.javapractices.com/topic/TopicAction.do?Id=45
最基本的两点:
1) 需要同样的包名
2) 同样的序列化ID
package testServerAndClient;
import java.io.IOException;
import java.io.ObjectOutput;
import java.io.ObjectOutputStream;
import java.net.Socket;
import java.net.UnknownHostException;
public class client {
/**
* 欢迎大家使用这个源码 如有疑问请加qq群:151648295
*
*/
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
new client();
}
public client(){
try {
Socket s=new Socket("127.0.0.1",9999);
ObjectOutputStream oos=new ObjectOutputStream(s.getOutputStream());
User u=new User();
u.setName("xiangqiao123");
u.setPass("123");
oos.writeObject(u);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
package testServerAndClient;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.net.ServerSocket;
import java.net.Socket;
public class Server {
public static void main(String[] args) {
new Server();
}
public Server(){
try {
ServerSocket ss=new ServerSocket(9999);
Socket s=ss.accept();
ObjectInputStream ois= new ObjectInputStream(s.getInputStream());
User user=(User)ois.readObject();
System.out.println(user);
} catch (Exception e) {
e.printStackTrace();
}
}
}
package testServerAndClient;
import java.io.Serializable;
public class User implements Serializable {
private String name;
private String pass;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPass() {
return pass;
}
public void setPass(String pass) {
this.pass = pass;
}
}
- 对象逆序列化报错:java.lang.ClassNotFoundException
- 对象逆序列化报错:java.lang.ClassNotFoundException
- java.lang.ClassNotFoundException翻译
- java.lang.ClassNotFoundException
- java.lang.ClassNotFoundException: 解决方法
- Tomcat:java.lang.ClassNotFoundException
- java.lang.ClassNotFoundException: HaierTVFactory
- java.lang.ClassNotFoundException
- java.lang.ClassNotFoundException: ContextLoaderListener
- java.lang.ClassNotFoundException 异常
- java.lang.ClassNotFoundException
- java.lang.classnotfoundexception错误
- java.lang.ClassNotFoundException: ContextLoaderListener
- java.lang.ClassNotFoundException: ...
- SSH:java.lang.ClassNotFoundException
- java.lang.ClassNotFoundException:
- java.lang.classnotfoundexception
- java.lang.ClassNotFoundException…
- java.lang.NoSuchMethodError: javax.servlet.jsp.JspFactory.getJspApplicationContent()异常
- 问题来了、、挖掘机技术哪家强?问题又来了、、
- 静态库bug
- PullToRefreshListView OnItemLongClickListener长按事件
- Grunt 入门教程一:开始使用Grunt(翻译自官方教程)
- 对象逆序列化报错:java.lang.ClassNotFoundException
- Linux (redhat 6.2) 下源码安装mysql (5.6.19)
- Server.MapPath() System.Environment.CurrentDirectory Application.StartupPath
- 关于Spring中的<context:annotation-config/>配置
- (菜鸟上路) linux下硬盘安装windows,实现双系统
- jquery mobile关于使用iscroll动态加载数据实现下拉刷新和上拉的效果
- 带有上下文的jquery选择器
- wsgiref 源代码分析 --start_response()
- PHP使用正则匹配进行表单验证案例