我在weblogic上运行了多个应用程序。我需要让用户选择语言(英语,西班牙语,法语......),当他们选择时,他们想要使用的所有应用程序必须基于他们选择的语言。当我在会话中保存Locale
时,该应用程序的一切正常,但当用户单击其他应用程序(超出应用程序范围)时,语言将更改为默认值。有没有办法在所有应用程序之间共享此值?
答案 0 :(得分:3)
是。一种选择是将用户区域设置首选项保存在共享数据库中。另一种是手动发送浏览器cookie。
答案 1 :(得分:0)
如果在同一服务器上部署应用程序,请尝试在weblogic上的服务器级别配置JMS。 请看这个对你有用的话题 http://middlewaremagic.com/weblogic/?p=1987
或者
答案 2 :(得分:0)
您必须在同一企业应用程序(.ear)中共享Web应用程序(.war)之间的HTTP会话。在.ear的weblogic-application.xml中添加以下设置:
<session-descriptor>
<sharing-enabled>true</sharing-enabled>
</session-descriptor>
请参阅:http://xmlns.oracle.com/weblogic/weblogic-application/1.2/weblogic-application.xsd和http://xmlns.oracle.com/weblogic/weblogic-javaee/1.2/weblogic-javaee.xsd
注意: 当你混合几个.wars时要小心cookie名称。在我们的情况下,使用默认cookie名称JSESSIONID混合.wars(静态资源)和具有明确定义的会话cookie名称的应用程序,“共享”cookie名称变为JSESSIONID,而不是明确定义的名称。