3

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. httpclient バージョン 4.1.1 を使用しています: 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 - カスタムの SerializingTranscoder を使用するために spymemcached を取得する方法がわかりません。
4

1 に答える 1

5

ここでのアドバイスはうまくいきました: 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)
...
于 2013-02-05T22:09:13.847 に答える