heroku之spymemcached 从 BasicClientCookie 的 SerializingTranscoder 中抛出 ClassNotFoundException

现男友 阅读:15 2024-11-01 17:39:52 评论:0

我正在使用 spymemcached 2.8.1 版读取 cookie 对象,但我一直遇到以下异常:

app[web.1]: WARN net.spy.memcached.transcoders.SerializingTranscoder: 
                 Caught CNFE decoding 513 bytes of data 
app[web.1]: java.lang.ClassNotFoundException 
                 org.apache.http.impl.cookie.BasicClientCookie 
  1. 我使用的是 4.1.1 版的 httpclient:https://dl.dropbox.com/u/6207935/Screen%20Shot%202013-02-05%20at%202.47.19%20PM.png 其中有 BasicClientCookie 类,所以我不太确定为什么它“找不到”

  2. 另外,根据听说,我认为 BasicClientCookie 已在 4.1.1 中标记为可序列化,但确切的 javadoc 有点难以挖掘,老实说......所以这是我的假设。无论如何,异常似乎与序列化无关,但我想为了问题的完整性我会把它扔在那里。

有什么想法可以解决这个问题?


更新#1(2013 年 2 月 5 日)

这些可能会阐明问题:

  1. http://code.google.com/p/spymemcached/issues/detail?id=146 - 但在使用 Heroku 时,我不知道如何对我的应用程序服务器的文件系统获得相同级别的控制......这里描述的方式。
  2. http://code.google.com/p/spymemcached/issues/detail?id=155 - 不确定如何让 spymemcached 使用自定义 SerializingTranscoder。

请您参考如下方法:

此处给出的建议有效:http://code.google.com/p/spymemcached/issues/detail?id=155#c2

唯一的额外一点是在将自定义 SerializingTranscoder 应用于 spymemcached 之后对其进行测试

MemcachedClient mc = 
new MemcachedClient( 
new ConnectionFactoryBuilder() 
.setTranscoder(new CustomSerializingTranscoder()) // makes it take effect 
.setProtocol(ConnectionFactoryBuilder.Protocol.BINARY) 
... 


标签:Exception
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号