由于预算限制,我正试图从 JRebel 转移到 dcevm/hotswapagent ( http://www.hotswapagent.org/ )。我的 Java 1.7 应用程序是使用 ant 构建的,并作为包含 EJB jar 服务层和 WAR Web 层的 EAR 文件手动部署到 WebLogic 12.1.3。我的开发是使用 Eclipse 完成的。我有 hotswapagent 工作到可以修改服务层 EJB 或 Web 层类的程度,例如。JSF bean),但是当我对 xhtml 进行更改、保存并重新加载时,JSF 视图本身不会刷新。
我将重申我没有在 Eclipse 中使用 Run As -> Run On Server。我正在构建 ear 文件并使用 WebLogic 控制台部署它,然后修改代码。这种方法适用于 JRebel。
我试过在hotswap-agent.properties中指定这个属性:
# Load static web resources from different directory.
#
# This setting is dependent on application server plugin(Jetty, Tomcat, JBoss, ...)
webappDir=/dev/workspace/myapp_web/WebContent/
...以及web.xml中的这些属性:
<context-param>
<param-name>javax.faces.FACELETS_REFRESH_PERIOD</param-name>
<param-value>1</param-value>
</context-param>
<context-param>
<param-name>javax.faces.PROJECT_STAGE</param-name>
<param-value>Development</param-value>
</context-param>
...但没有任何运气。
hotswapagent 和/或 WebLogic 12.1 可以做到这一点吗?