使用JRebel重新加载JSF更改

时间:2015-05-07 05:55:30

标签: jsf jrebel

虽然 JRebel 可以在我的项目中重新加载Java类更改,但它无法重新加载 JSF 更改。当我更改JSF文件时,我看不到任何日志等。 这是我的 rebel.xml

<classpath>
    <dir name="${projectDir}/classes">
    </dir>
</classpath>

<web>
    <link target="/WEB-INF">
        <dir name="${projectDir}/war/conf">
        </dir>
    </link>
</web>

所有JSF文件都在 $ {projectDir} / war / 中。我使用 JBoss IntelliJ IDEA 。在项目中,Ant创建一个ear文件并将其部署到JBoss。

如何使用 JRebel重新加载JSF文件 rebel.xml 中的web标记应该指向JSF文件还是编译XHTML?

1 个答案:

答案 0 :(得分:1)

我遇到了类似的问题,对我来说,参数javax.faces.FACELETS_REFRESH_PERIOD需要设置为0.参数在 web.xml 中设置。

<context-param>
    <param-name>javax.faces.FACELETS_REFRESH_PERIOD</param-name>
    <param-value>0</param-value>
</context-param>

有一个很好的博客条目here,用于描述不同的可用配置参数:

  

自上次请求以来应检查facelets的更改时间(以秒为单位)。请求页面时,编译器应检查更改的秒数。如果您不希望编译器在编译页面后检查更改,则使用值-1。设置较低的刷新周期有助于在开发过程中编辑正在运行的应用程序中的页面。

简而言之,在开发过程中将值设置为0应该能够立即重新加载文件。