FACELETS_REFRESH_PERIOD的默认值是多少?

时间:2012-10-23 14:43:32

标签: performance jsf configuration myfaces mojarra

在JSF应用程序中,参数javax.faces.FACELETS_REFRESH_PERIOD可用于启用/禁用XHTML文件的自动重新加载。

我目前正在研究生产部署的正确配置,并且意外地发现我们目前使用FACELETS_REFRESH_PERIOD = 1进行生产,这显然不是一个好主意。

这导致了一个问题:此参数的默认值是什么?

理想情况下,为了简单起见,我想从生产配置中省略FACELETS_REFRESH_PERIOD,并希望它使用“安全”默认值-1。但是,似乎并非如此,因为没有参数,似乎启用了刷新(使用Mojarra和MyFaces)。

我检查了JSF规范,虽然它描述了参数,但它没有给出默认值。这是规范中的故意遗漏吗?

1 个答案:

答案 0 :(得分:13)

默认值取决于实现。

鉴于您正在使用Mojarra,您可以在com.sun.faces.config.WebConfiguration类中找到默认值:

768         FaceletsDefaultRefreshPeriod(
769               "javax.faces.FACELETS_REFRESH_PERIOD",
770               "2"
771         )

(行号来自Mojarra 2.0.0)

默认为2。我在任何Mojarra文档中都找不到这个。将issue report发布给Mojarra的家伙以便更好地记录它可能是值得的。

MyFaces根据its documentation的默认值为2


更新:如果项目阶段为-1,则从Mojarra 2.2.11开始,默认值设置为Production。另请参阅issue 3788