尝试进入memcache客户端时,获取以下内容。
Caused by: java.io.IOException: com.fet.myclass.webservice.data.DataList
at com.schooner.MemCached.ObjectTransCoder.decode(Unknown Source)
请帮忙。感谢。
编辑:
DataList是我自己的对象。是否有任何约束,只有本机java对象可以缓存,像那样?
答案 0 :(得分:0)
MemCached.ObjectTransCoder解码方法依赖java.io.ObjectInputStream
从缓存中反序列化缓存的Java对象。
因此,首先,您必须检查您的DataList对象是否可序列化。也就是说:它实现了java.io.Serializable
接口,并且它的所有类级别属性都是原始类型或可序列化对象。
另外,检查列出的组件代码here解码方法的实现方式是使用类名作为消息将ClassNotFoundException包装在IOExpcetion中,这似乎在这里发生。
所以,作为第二点,你应该检查你是否遇到这个错误的进程,你的类是否包含在它的类路径中(通过-cp参数,或者是什么情况),以及是否在错误与您的类完全限定名称完全匹配。