请问这个配置能不能笔记本玩绝地求生配置

serialVersionUID不一致导致控制台出现异常:java.io.InvalidClassException - 忧郁的ej - ITeye技术网站
博客分类:
17:13:15.101 WARN net.spy.memcached.transcoders.SerializingTranscoder:
Caught IOException decoding 848 bytes of data
java.io.InvalidClassException: com.*.article.qa.entity.Qa_
local class incompatible: stream classdesc serialVersionUID = 8052390, local class serialVersionUID = 2229700
at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:562)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1582)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1495)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1731)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:350)
at net.spy.memcached.transcoders.BaseSerializingTranscoder.deserialize(BaseSerializingTranscoder.java:129)
at net.spy.memcached.transcoders.SerializingTranscoder.decode(SerializingTranscoder.java:88)
at net.spy.memcached.transcoders.TranscodeService$1.call(TranscodeService.java:63)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at net.spy.memcached.transcoders.TranscodeService$Task.run(TranscodeService.java:110)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
访问一些链接,访问数据库,底层就抛出这个错误。并非都出现,而是几率性出现。
目前并没有发现不一致的地方。有可能是底层缓存net.spy.memcached里的代码影响。原因是:我本地的实体增加了三个字段,但是缓存里并没有改变影响,进一步追踪中......
根据网上说明:
本地和远程的entity序列化后的serialVersionUID不一致导致
将本地的序列化的类中的版本号(serialVersionUID )改成和远程中一样,在本地的序列化类里的private static final long serialVersionUID = 改成远程的就行了,如果没有的话就加上这句。
解决办法:
在dao.propertities里面添加:memcache.key.version.Qa_question=1.0.1
为什么添加这行,说明如下:
Dao配置文件 dao.properties,由系统启动加载,系统变量"-Ddao.config.file=文件的绝对路径"
#entity默认的key版本
memcache.key.version.default=1.0.0
#如果一个entity版本变更,需要在配置文件中定义一个key,无须重启,自动生效
#格式:memcache.key.version.{entity的class名字}=版本号
memcache.key.version.User=1.0.1
#memcache client factory class name
#如果开启cache,打开下行注释,不启动cache,注释下行
memcache.client.factory=MemcachedClientSpyFactory
# Spy Params Config
spy.memcached.servers=host1:11211,host2:11311
# Set the default expire time in seconds
spy.memcached.defaultExpire=86400
pressionThreshold=16384
# Set the default operation timeout in milliseconds.
spy.memcached.opTimeout=1000
bluetaoren
浏览: 27169 次
来自: 北京
Z_408 写道这个可以的,你不妨试试。Action中代码:p ...
这个可以的,你不妨试试。Action中代码:public St ...
请问有上传图片到BLOB的例子么君,已阅读到文档的结尾了呢~~
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
java.io.InvalidClassException 实体类序列化问题
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口出现java.io.InvalidClassException
java.io.InvalidClassException: com.tbynet.admin.AdminB local class incompatible: stream classdesc serialVersionUID = 9129990, local class serialVersionUID = -6915867
at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:562)
at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1583)
at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1496)
at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1732)
at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1329)
at java.io.ObjectInputStream.readObject(ObjectInputStream.java:351)
at org.eclipse.jetty.server.session.HashSessionManager.restoreSession(HashSessionManager.java:567)
at org.eclipse.jetty.server.session.HashSessionManager.restoreSession(HashSessionManager.java:493)
at org.eclipse.jetty.server.session.HashSessionManager.restoreSessions(HashSessionManager.java:478)
at org.eclipse.jetty.server.session.HashSessionManager.doStart(HashSessionManager.java:107)
at org.eclipse.ponent.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
at org.eclipse.jetty.server.session.SessionHandler.doStart(SessionHandler.java:123)
at org.eclipse.ponent.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95)
at org.eclipse.jetty.server.handler.ScopedHandler.doStart(ScopedHandler.java:115)
at org.eclipse.jetty.server.handler.ContextHandler.startContext(ContextHandler.java:752)
at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:249)
at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1250)
at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:706)
at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:492)
at org.eclipse.ponent.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:95)
at org.eclipse.jetty.server.Server.doStart(Server.java:277)
at org.eclipse.ponent.AbstractLifeCycle.start(AbstractLifeCycle.java:64)
at com.jfinal.server.JettyServer.doStart(JettyServer.java:114)
at com.jfinal.server.JettyServer.start(JettyServer.java:63)
at com.jfinal.core.JFinal.main(JFinal.java:178)
当 Serialization 运行时检测到某个类具有以下问题之一时,抛出此异常。
该类的序列版本号与从流中读取的类描述符的版本号不匹配
该类包含未知数据类型
该类没有可访问的无参数构造方法
下面是报异常的Bean:
package com.tbynet.
import java.io.S
import com.tbynet.model.S
import com.tbynet.model.SiteD
import com.tbynet.model.U
@SuppressWarnings(&serial&)
public class AdminBean implements Serializable {
private SiteDomain siteD
public AdminBean() {
public void init(User user, Site site, SiteDomain siteDomain) {
this.user =
this.site =
this.siteDomain = siteD
public User getUser() {
public void setUser(User user) {
this.user =
public Site getSite() {
public void setSite(Site site) {
this.site =
public SiteDomain getSiteDomain() {
return siteD
public void setSiteDomain(SiteDomain siteDomain) {
this.siteDomain = siteD
Google,Baidu了好久,试了几种方案也没有解决这个异常。当然,出现这个异常,目前也没有影响程序的正常运行。只是一运行,就会出现这个异常。求解!
在eclipse 的 workspace 中找到 session_data 目录,删掉即可。JFinal 开启了 Jetty 的 session persist功能,所以在你持久化的类存入session之后如果修改了那么类就无法被反序列化了,下一版考虑改进一下。搞定后反馈给我
--- 共有 2 条评论 ---
: 不客气,谢谢你的支持。
OK了,谢谢呀!
补充一下出现此问题的详细情况:
1:在程序中将MyModel放入 session
2:修改MyModel类文件
3:JFinal监测到类文件变化,首先将session数据持久化到硬盘,然后重新加载WebContext,加载完成从硬盘恢复数据到session中。
4:由于MyModel被修改过了,造成硬盘中的MyModel数据在恢复到内存中的时候版本不对无法兼容。
& & 这本质上是一个java 序列化与反序列化的问题。本帖子已过去太久远了,不再提供回复功能。Java基础(33)
一、异常发生场景
在使用Netty做Android消息推送时,发生了如下异常:
io.netty.handler.codec.DecoderException: java.io.InvalidClassException: failed to read class descriptor
很明显这是一个跟编解码相关的异常
二、异常产生原因
在整个推的项目中,消息是一个Message类,Message必须转换为字节传输,因此在Message类中实现了Serializable接口,在服务器中将Message编码传输到客户端中解码,就是这个环节发生了错误,这是因为服务端的Message类和客户端的Message类的包路径不一样,导致编码和解码不一致,自然会报异常!
三、异常解决
序列化的类最好加上serialVersionUID,免java.io.InvalidClassException,不同的JVM对serialVersionUID的计算方法可能不一样,就算类的定义和序列化后的对象是一致的,也可能从JVM-A里序列化后的对象到达JVM-B后,JVM-B认为 Class Invalid
服务端和客户端编解码的类的路径要一致
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:93155次
积分:2617
积分:2617
排名:第13306名
原创:166篇
转载:53篇
评论:44条
文章:15篇
阅读:6321

我要回帖

更多关于 电脑配置能玩绝地求生 的文章

 

随机推荐