我正在使用SignPost和Java来做一个三条腿的OAuth集成。我看到的大多数示例都使用Servlet会话来跨多个请求保留OAuthConsumer,但这对我们来说是不可行的,因为我们使用Hazelcast来管理多集群环境。
“没问题,我将使用Hazelcast跨请求隐藏OAuthConsumer。”但是当我尝试这样做时,我得到了一个异常:
原因: java.io.NotSerializableException: oauth.signpost.http.RequestParameters
就像我说的,这是一个第三方库,所以我不能修改它,但我确实看到OAuthConsumer扩展了Serializable……所以我不确定问题出在哪里。
还有没有其他人遇到过这个问题,并且能够解决它?
发布于 2015-06-18 04:34:06
在仔细研究了API之后,我们意识到,如果我们只使用Hazelcast来持久化临时令牌和密钥,我们就可以重建对象。
这些调用包括:
OAuthConsumer oauthConsumer = new DefaultOAuthConsumer(myAppConsumerKey, myAppConsumerSecret);
oauthConsumer.setTokenWithSecret(temporaryToken, tokenSecret);https://stackoverflow.com/questions/30899219
复制相似问题