2

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

那么,我们尝试了什么?我们尝试在调试模式(开发期间)覆盖以下 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

请帮助我!

4

1 回答 1

1

您是否向 JRebel 论坛/支持报告了该问题?我确信它可以在 JRebel-Seam 集成中实现

于 2012-06-21T18:56:18.623 回答