【发布时间】:2012-04-29 22:58:11
【问题描述】:
我曾经使用 JSP 作为视图技术。但是对于 JSF-2.0,新的推动力是让开发人员使用 Facelets 作为他们的模板技术。但这是否是一个严重的问题?如果我继续将 JSP 用于 JSF 中的视图,我会失去什么吗?究竟比这项技术更好? XHTML 和JSP 的工作有什么根本区别吗?如果有人能回答我将不胜感激!谢谢
【问题讨论】:
标签: java jsp jsf jsf-2 facelets
我曾经使用 JSP 作为视图技术。但是对于 JSF-2.0,新的推动力是让开发人员使用 Facelets 作为他们的模板技术。但这是否是一个严重的问题?如果我继续将 JSP 用于 JSF 中的视图,我会失去什么吗?究竟比这项技术更好? XHTML 和JSP 的工作有什么根本区别吗?如果有人能回答我将不胜感激!谢谢
【问题讨论】:
标签: java jsp jsf jsf-2 facelets
新的视图范围和 Facelets 的包含是 JSF 的重大改进以及对 ajax 和注释的支持。该技术是 JSF 2.0 中一个非常重要且强大的属性。所以我不建议在没有必要的情况下忽略它。
不鼓励 JSP 使用 JSF 2.0,因为 Facelets 为开发用户界面提供了比传统 JSP 更清晰和灵活的机制。 Facelets 要好得多,有几个基本原因:
一般来说,JSF 2.0 中的 JSP 作为视图技术被认为比较麻烦且难以维护
【讨论】:
如果您使用 JSF,那么您确实应该使用 Facelets 而不是 JSP,因为 JSP 和 JSF 并不是很匹配。主要的问题是JSP 世界对JSF life cycle 一无所知。您可以阅读this article 获取一些示例。 Facelets 没有这些问题,因为它是专门为匹配 JSF 而创建的。
【讨论】:
在 xhtml 和 jsp 之间没有选择。 JSP 是一种服务器端模板机制,用于创建基于文本的响应以发送到浏览器。该文本响应可以是 xhtml、html、json、xml 或任何其他文本格式。因此,您可以使用 jsp 创建 xhtml - 您无需在它们之间进行选择。
仅仅因为您更改了扩展名并不意味着您正在做任何不同的事情。你只是在改变你所说的 - 没有特别的理由这样做,这很令人困惑。
【讨论】: