我正在调试一个 Web 应用程序,其中每个登录用户都有一个“会话变量映射”,它在一个简单的 Spring 会话范围 bean 中实现,该 bean 注入了一个会话范围的 HashMap bean。最初这些 bean 位于主 web 应用程序的 servlet 上下文中,但后来它们被放入不同的 web 服务(!)并通过 Spring 的远程技术之一访问,RMI、HttpInvoker 和 Hessian 可以在属性文件中选择。该应用程序仍然适用于多个用户、非集群、Weblogic 10.3。
我的问题是:为什么它有效?我认为会话范围的 bean 应该只在接收 HTTP 请求的同一个 web 应用程序中工作。“会话”如何通过 RMI 调用传播?