java - 如何在 Seam 2 中实现 resourcebundle (messages.properties) 的热重载

标签 java jsf seam resourcebundle seam2

我们仍在将 Seam 2 (2.2.GA) 用于一个旧版 Web 应用程序。我们有 JRebel 来热重载所有东西(xhtml、java),但不是 i18n messages.properties。太烦人了!

那么,我们尝试了什么?我们试图在 Debug模式下(在开发期间)覆盖以下 Seam 的内置组件:

  • org.jboss.seam.core.ResourceLoader - @Name("org.jboss.seam.core.resourceLoader")
  • org.jboss.seam.international.Messages - @Name("org.jboss.seam.international.messagesFactory")
  • org.jboss.seam.core.ResourceBundle - @Name("org.jboss.seam.core.resourceBundle")

并且以下类也被覆盖:

  • DynamicSeamResourceBundle 扩展了 org.jboss.seam.core.SeamResourceBundle(因此它不再有意地缓存包,seam 自己的缓存机制)
  • DynamicResourceBundleControl 扩展了 ResourceBundle.Control(使用 timeToLive = TTL_DONT_CACHE 来覆盖 Java 的缓存行为)

当然,自定义组件由Seam 初始化和使用,当然属性文件在每次尝试之前都有bean 更改。但所有的技巧都无济于事!自定义代码的Idee可以在这里找到:https://community.jboss.org/thread/184261

请帮帮我!

最佳答案

您是否已将问题报告给 JRebel 论坛/支持?我确定它可以在 JRebel-Seam 集成中实现

关于java - 如何在 Seam 2 中实现 resourcebundle (messages.properties) 的热重载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11087376/

相关文章:

java - 使用 Java8 Streams API 实现二分查找

java - java中从二进制文件中读取对象

java - 如何使用 GSON 忽略对象列表中对象内部的 transient 字段定义

java - 添加您自己的词汇 [Nuxeo]

java - 生成器模式。扩展接口(interface)

java - RichFaces 和 JSF : Where does the fileUpload component upload files?

jsf - 为什么在 p :messages if the client id doesn't match? 中添加了 JSF 消息

当文件扩展名为 ".jsf"但为 ".xhtml"时出现 JSF ServletException

java - 如何使用java在java中使用seam生成excel文件

jsf - 在不单击文本的情况下单击 MenuItem