Why is XMPPConnection not Serializable?

I’m building a web-based chat over Websockets and using Smack to connect to Openfire.
At the moment i’m using a HashMap on the server to store the relationship between websocket sessionId and XMPPConnection. This way I know when a request comes I know which XMPP connection belongs to.
However, this solution does not scale horizontally. If I add more servers then each one of them holds in their memory a separate Map with different connections.
For this reason I was thinking to store the relationship in a key value store like Redis or Hazelcast. Then from my code I would be able to call redis.get(websocketSession.getSessionId()) and receive the XMPPConnection to work with. However this is not possible because XMPPConnection is not serializable.
How can I achieve this?

This topic was automatically closed 100 days after the last reply. New replies are no longer allowed.