【问题标题】:Dynamic JSF resource bundle/message bundle动态 JSF 资源包/消息包
【发布时间】:2011-02-08 22:10:04
【问题描述】:

我想在我的应用程序中有一个动态资源包。我将向用户显示一个表单,他可以在其中编辑资源包的值。我无法重新启动我的应用程序以使此更改生效。我找到了解决部分问题的解决方案。使用 Apache 的“commons-configuration”或/和这个http://www.coderanch.com/t/292347/JSP/java/we-reload-property-file,我可以更改我的“.properties”文件并使用“ResourceBundle.getBundle”获取结果。 问题是当我尝试像这样访问我的 XHTML 文件中的属性时:

<h:outputLabel value="#{msg[user.name]}" />

此键的值已过期。
有解决办法吗?

仅供参考,我使用的是 spring,所以我的 faces-config 中有这个:

<el-resolver>org.springframework.web.jsf.el.SpringBeanFacesELResolver</el-resolver>

但我认为这不是问题所在。无论如何,另一种解决方案是使用会话 bean 并获取访问它的属性值。 你怎么看待这件事?将这些值存储在我的数据库中并忘记属性文件会更好吗?

【问题讨论】:

  • 相关:stackoverflow.com/questions/4325164/…请注意arjan的回答。
  • 谢谢大哥!我也会尝试 arjan 代码。我已经得到了预期的结果。当我尝试更改“config.dataTable.rowsPerPage”之类的配置时遇到了一个小问题,但我认为这应该是一个 primefaces 问题。

标签: jsf dynamic resources properties bundle


【解决方案1】:

\o/

我已经测试使用标签 f:loadBundle 将我的资源包定义从我的 faces-config 移动到我的页面并且它有效!

【讨论】:

    猜你喜欢
    • 2011-03-06
    • 2011-02-09
    • 1970-01-01
    • 2012-08-01
    • 2012-04-25
    • 2011-12-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多