我正在使用PrimeFaces/JSF开发一个 Web 应用程序。
它具有语言选择的典型组合。
当有人点击组合时,会触发valueChangeListener。
该侦听器 (changeLocaleListener) 更改视口区域设置,因此可以加载正确的消息包 .properties 文件。
这可以按预期工作,但是,我对采用的策略感到困惑,以便从数据库再次加载依赖于 i18n 的页面的实际内容。
我的意思是,你如何刷新调用正确的 actionListeners 方法的页面。
想象以下场景:
您到达主页(西班牙语被选为默认语言)。
显示最新消息和最新事件列表(西班牙语)。
您单击其中一条新闻并到达详细的新页面(西班牙语)。
哟在组合中选择英语,然后,应从数据库中重新加载所选新的详细信息并以英语显示。
有没有办法根据用户所在的实际页面自动化并控制应该调用哪些 dao 方法?
<p:selectOneMenu
value="#{i18nCtrl.mdl.local}"
var="loc"
onchange="$('#form').submit()"
converter="localConverter"
valueChangeListener="#{i18nCtrl.changeLocaleListener}" >
...
谢谢