gpt4 book ai didi

jsf - MyFaces 中的开发和生产有什么区别

转载 作者:行者123 更新时间:2023-12-04 01:54:43 31 4
gpt4 key购买 nike

我正在用 MyFaces 在 JSF 中做一些开发工作,我收到了这个警告。

*******************************************************************
*** WARNING: Apache MyFaces-2 is running in DEVELOPMENT mode. ***
*** ^^^^^^^^^^^ ***
*** Do NOT deploy to your live server(s) without changing this. ***
*** See Application#getProjectStage() for more information. ***
*******************************************************************

开发模式和生产模式有什么区别?是否存在安全隐患?仅仅是性能提升吗?

最佳答案

没有安全风险,但有性能影响。当项目阶段设置为开发时,将更频繁地记录日志并减少缓存。

关于日志记录,将记录有关如何构建和呈现组件的其他调试信息。例如,如果您有一个 <h:inputText>没有任何父级 <h:form> ,然后这将被记录并显示为面孔消息。所有排队的人脸消息都没有显示在 <h:message(s)> 中的任何一个中组件将无论如何显示在页面底部的单独消息列表中,带有橙色警告字体,表示“未显示”消息。另外,异常处理不同,MyFaces 将代替 <error-page>显示一个丰富的错误页面,包括有关组件树和作用域变量的详细信息。

关于缓存,Facelet 缓存会更频繁地刷新。因此,如果您在 Facelet 文件中进行更改并按 F5,那么更改将“立即”反射(reflect)。这不适用于生产阶段,您基本上需要重新启动整个服务器。

还有 jsf.js JavaScript 文件将显示为未缩小的版本,从而可以更轻松地在浏览器中进行 JS 调试。在生产阶段,它是缩小版,因此更小更快,但它完全不可读。

Mojarra 有很多类似的行为,期待丰富的错误页面。

关于jsf - MyFaces 中的开发和生产有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13960829/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com